首页 文章

Laravel 5 Amazon AWS S3错误:客户端错误:403 RequestTimeTooSkewed

提问于
浏览
5

我正在尝试通过laravel应用程序将文件上传到S3存储桶

我收到以下错误:

WrappedHttpHandler.php第152行中的S3Exception:在“https://s3-ap-southeast-1.amazonaws.com/ AWS HTTP错误:客户端错误:403 RequestTimeTooSkewed(客户端)上执行”PutObject“时出错:请求之间的差异时间和当前时间太长

我没有同步时间.2769100_因为 im afraid of breaking something ,我害怕乱糟糟的家园 . 我是否更改了我的应用时区?真的不确定 .

请帮助并感谢您抽出宝贵时间

2 回答

  • 10

    您需要更新家园安装的时钟 . 您可以使用ntpd执行此操作,以确保这可以使您的时钟保持最新,因为系统在重新启动期间可能会遇到合理的时间 . 在虚拟机上,这似乎更为重要(但我不确定详细原因) .

    要获得ntpd设置并运行,请在宅基础框中执行以下操作;

    sudo apt-get install ntp
    

    然后你需要设置你的时间服务器 . 运行以下内容;

    sudo nano /etc/ntp.conf
    

    然后确保该文件具有以下内容;

    server ntp.ubuntu.com
    server pool.ntp.org
    

    保存完这些更改后再运行;

    sudo service ntp restart
    

    完成此操作后,ntpd将保持系统时钟的正确性,从而最大限度地降低从S3返回的漂移错误的风险 .

    最后我要注意不要过分担心破坏家园环境,因为它是虚拟机 . 如果你出错了,你可以很容易地重建它的美丽 .

  • 1

    我的网站使用Ubuntu 14.04.5和Apache托管在AWS中

    我上传的文件完美无缺,然后我开始得到同样的错误 . 在"...."上执行"PutObject"时出错.... RequestTimeTooSkewed

    所以使用@marcus方法我没有看到那些服务器ntp.ubuntu.com和服务器pool.ntp.org文件...但是使用命令

    timedatectl
    

    我知道我的时区是正确的但是:

    • NTP已启用:是的

    • NTP同步:没有

    NTP未同步,因此我尝试重新启动NTP:

    sudo service ntp restart
    

    它将我的 NTP synchronized 更改为YES,它解决了问题 .

相关问题