我使用dokku来托管使用aws-s3 SDK gem将文件上传到S3的rails应用程序。当我尝试将文件上传到服务器时,它在我的日志中给出了以下错误:
Aws :: S3 :: Errors :: RequestTimeTooSkewed(请求时间和当前时间之间的差异太大。):
S3存储桶位于us-east-1,而我服务器上的时区设置为芝加哥时区。
日期Mon Mar 21 23:33:33 CDT 2016
当我拖动dokku日志时,它会以UTC格式显示时间:
2016-03-22T04:28:39.425196210Z prod [web.2]:I,[2016-03-22T04:28:39.422140#154] INFO - :worker = 2 ready
如何在dokku和OS之间同步我的时间?我的操作系统是否需要与S3时间同步?如果是这样,就没有芝加哥时区的S3桶。
的/ etc /时区
America/Chicago
答案 0 :(得分:0)
最佳做法是将所有服务器时钟设置为UTC以避免时间转换的某些特性 - 但是 - 时区设置应该不是问题,这里。
S3不会在本地时间运行存储区位置。它运行在UTC上。
如果您看到的UTC时间戳相对于系统时间是正确的,那么服务器上的时区设置无关紧要。
错误表示时钟倾斜 - 这通常意味着几分钟太快或太慢,因为您没有将服务器时钟与外部时间参考同步,通常使用{{1 }}。
验证这一点。