[amazon-s3] S3 오류 : 요청 시간과 현재 시간의 차이가 너무 큽니다.

I 오류가 요청 시간과 현재 시간의 차이가 너무 큰 경우 통화 방법 amazons3.ListObjects

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

    return result;
}

무엇일까요?



답변

로컬 박스의 시간이 현재 시간과 동기화되지 않습니다. 시스템 시계를 동기화하면 문제가 사라집니다.


답변

Vagrant를 사용하는 사람들에게는 a vagrant haltvagrant up나를 위해 일했습니다.


답변

시계가 동기화되지 않았습니다.

이 게시물 의 단계를 따라 다시 작동하도록했지만 다음 명령도 실행해야했습니다.

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

NTP 소켓이 아직 사용 중이라는 메시지가 표시되면 언제든지 중지하고 sudo /etc/init.d/ntp stop명령을 다시 실행하십시오.


답변

동일한 오류가 발생하여 Mac 용 Docker를 사용하고 있습니다. Docker를 다시 시작하는 것만으로도 효과적이었습니다.


답변

누군가 Laravel과 Homestead를 사용하여 이것을 발견하면 간단히 실행하십시오.

homestead halt

뒤에

homestead up

그리고 다시 가셔도 좋습니다.


답변

Windows에서 Docker를 사용하는 경우 설정-> 재설정-> Docker 다시 시작에서 Docker 엔진을 다시 시작하십시오.


답변

다른 사람들이 말했듯이 로컬 시계가 AWS와 동기화되지 않았습니다. NTP를 사용하여 직접 Amazon 서버에 동기화 상태를 유지할 수 있으므로 현재 또는 미래의 클럭 드리프트에 대해 걱정할 필요가 없습니다 .

참고 : 아래 지침은 * nix 사용자를위한 것입니다. Windows에서 수행 할 수있는 방법에 대한 설명을 추가했지만 Windows가 아닌 사용자로서 정확성을 확인할 수 없습니다.

  1. NTP를 설치하려면 배포에 따라 다음 중 하나를 선택하면됩니다.

    apt-get install ntp
    

    또는

    yum install ntp
    

    기타

  2. 다음과 같이 Amazon 서버를 사용하도록 NTP를 구성합니다.

    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
    
  3. 그런 다음 ntp 서비스를 다시 시작하십시오.

    sudo service ntp restart
    

출처 : 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