S3错误:请求时间和当前时间之间的差异太大

我有错误当调用方法amazons3.ListObjects时,请求时间和当前时间之间的差别太大

ListObjectsRequest request = new ListObjectsRequest() { BucketName = BucketName, Prefix = fullKey }; using (ListObjectsResponse response = s3Client.ListObjects(request)) { bool result = response.S3Objects.Count > 0; return result; } 

它可能是什么?

本地时间与当前时间不同步。 同步您的系统时钟,问题将消失。

时钟不同步。

我按照这篇文章中的步骤重新开始工作,但也必须运行以下命令。

 sudo ntpdate ntp.ubuntu.com sudo apt-get install ntp 

如果您在任何时候收到消息说NTP套接字仍在使用中,请使用sudo /etc/init.d/ntp stop停止它,然后重新运行您的命令。

对于那些使用stream浪汉的人来说,一个vagrant halt然后vagrant up为我工作。

如果有人发现这个使用Laravel和Homestead,只是运行

 homestead halt 

其次是

 homestead up 

而且你很好再去。

我有同样的错误,我使用Mac的Docker。 只需重新启动Docker为我工作。

这在OSX上正确地重置我的系统时钟。 现在在本地开发中使用JS SDK上传S3

 ntpdate us.pool.ntp.org 

阅读更多关于这里

对于那些在Windows中使用Docker,请尝试在设置 – >重置 – >重新启动Docker中重新启动Docker引擎。

为了摆脱这个问题,你必须调整客户的时间,使最大的时间差达到15分钟。 还要为系统设置标准时间和区域。

检查完整的细节在这里。

如果使用虚拟机,虚拟机的时间与真实机器的时间同步。 只是修复虚拟机的时间不会解决问题。

如果您在Windows中出现此错误,请按照以下步骤解决您的问题。更改您的本地时间设置: 步骤1:单击更改date和时间设置步骤2:从popup的date和时间窗口单击Internet时间选项卡步骤3:下一步单击更改设置 步骤4:从服务器下拉列表中selecttime-nw.nist.gov 第5步:单击确定

重新启动您的控制台并检查。 有用…

使用ntp可能无法在所有版本的基于Linux的服务器上工作(例如,过时的Ubuntu服务器版本不再支持,这将阻止您下载ntp,如果它尚未安装)。

如果这是您的情况,您可以为您的Linux VM设置独立的时区: https : //community.rackspace.com/products/f/25/t/650

完成后,您可能需要重置时间/date。 这样做的说明在这篇文章中: http : //codeghar.wordpress.com/2007/12/06/manage-time-in-ubuntu-through-command-line

这也可能是由于在任务外部使用asynchronous/等待来构造请求对象,以及在任务中实际调用AWS。 如果有许多任务正在运行,并且任务没有及时调度,或者有其他操作延迟了对AWS的实际调用,则可能会抛出此exception。

如果你在2016年和在伊斯坦布尔这里是一个奇怪的情况,土耳其决定不切换到冬季时间标准无论如何设置当地的时区到莫斯科,然后重新启动您的机器。

我碰到这个问题运行Jet(Codeship)和Terraform在MacOS上使用Docker for Mac Beta 1.13.1-beta42版本。

 Failed to read state: Error reloading remote state: RequestTimeTooSkewed: The difference between the request time and the current time is too large. status code: 403, request id: 9D32BA2A5360FC18 

这是通过重新启动Docker来解决的。

正如其他人所说,您的本地时钟与AWS不同步。 您可以使用NTP 直接与Amazon的服务器保持同步,因此您不必担心现在将来的时钟漂移。

注意:以下说明适用于* nix用户。 我已经添加了一个评论,说明你如何在Windows中做这件事,但作为一个非Windows用户,我无法validation他们的准确性。

– 要安装NTP,只需select下面的一个,取决于你的分布:

apt-get install ntpyum install ntp

– configurationNTP使用亚马逊服务器,如下所示:

vim /etc/ntp.conf

并在其中注释掉默认服务器并添加这些:

server 0.amazon.pool.ntp.org iburst server 1.amazon.pool.ntp.org iburst server 2.amazon.pool.ntp.org iburst server 3.amazon.pool.ntp.org iburst

来源: https : //www.allcloud.io/how-to/how-to-fix-amazon-s3-requesttimetooskewed/

关于保持与NTP同步的更一般的文章: https ://www.digitalocean.com/community/tutorials/how-to-set-up-time-synchronization-on-ubuntu-12-04