【问题标题】:Laravel 5 Amazon AWS S3 Error: Client error: 403 RequestTimeTooSkewedLaravel 5 Amazon AWS S3 错误:客户端错误:403 RequestTimeTooSkewed
【发布时间】:2015-06-28 06:09:29
【问题描述】:

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

我收到以下错误:

WrappedHttpHandler.php 第 152 行中的 S3Exception:执行错误 “https://s3-ap-southeast-1.amazonaws.com/”上的“PutObject”

AWS HTTP 错误:客户端错误:403 RequestTimeTooSkewed(客户端): 请求时间与当前时间相差太大

我做了一些研究,很多人说我的机器时间没有同步。我害怕弄乱宅基地,因为我害怕破坏某些东西。我要更改我的应用时区吗?真的不确定。

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

【问题讨论】:

    标签: amazon-web-services amazon-s3 laravel-5 homestead


    【解决方案1】:

    您需要更新宅基地安装的时钟。您可以使用 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 返回的漂移错误的风险。

    最后我要注意不要太担心破坏你的宅基地环境,因为它是一个虚拟机。它的美妙之处在于,如果出现问题,您可以非常轻松地重建它。

    【讨论】:

    • 我不得不执行 sudo service ntp restart 而不是 sudo service ntpd restart 但谢谢!
    • 工作,但应该是 'sudo service ntp restart' - 请更正你的答案
    【解决方案2】:

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

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

    所以使用@marcus 方法我没有看到那些 server ntp.ubuntu.comserver pool.ntp.org 文件...但是使用命令

    timedatectl
    

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

    • NTP 启用:是
    • NTP 同步:否

    NTP 未同步,因此我尝试使用以下命令重新启动 NTP:

    sudo service ntp restart
    

    它将我的 NTP synchronized 更改为 YES 并解决了问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-16
      • 1970-01-01
      • 1970-01-01
      • 2013-11-10
      • 1970-01-01
      • 1970-01-01
      • 2018-06-01
      • 2022-10-05
      相关资源
      最近更新 更多