2016-07-07 2 views
2

이미지에 서명 된 URL을 사용하려고 시도했는데 한 번해볼 수있었습니다. 그런데, 나는 그것을 삭제하고 그것을 다시 한번하려고 노력하고 나는 그것을 할 수 없다. 여기Cloudfront not S3에 액세스 할 수 없습니다.

내가 지금까지 무엇을했는지 있습니다 :

  1. 는 IAM 관리 콘솔에서 CloudFront를 키 쌍을 만들었습니다. 개인 및 공개 키를 다운로드했으며 액세스 키 ID = XXXXXXXXXXXXXXXXXXXX에 주목했습니다.
  2. S3 버킷이 생성되었습니다. 나의 버킷
  3. 제한 버킷 액세스 : 없음 사용자 정의 구성
  4. 설정은 다음과
    • 원산지 도메인 이름을 가진 CloudFront를 배포 만들어 새로운 원산지 액세스 신원을 만든 예
    • 그랜트는 통에 읽기 권한
    • : 선택한 예
    • 뷰어 액세스 (서명 된 URL 또는 서명 된 쿠키 사용) = 예
    • 신뢰할 수있는 서명자 = 자기
    • $keyPairId = 'XXXXXXXXXXXXXXXXXXXX';  
      $privateKey = config_path('pk-XXXXXXXXXXXXXXXXXXXX.pem'); 
      $url = "http://xxxxxxxxxxxxxx.cloudfront.net/image.jpg"; 
      $cf = new UrlSigner($keyPairId, $privateKey); 
      $imgSrc = $cf->getSignedUrl($url, time()); 
      echo "<img src='{$imgSrc}' />"; 
      

      하지만이 같은 오류가 점점 오전 모든 시간 :

      <Error> 
      <Code>MissingKey</Code> 
      <Message>Missing Key-Pair-Id query parameter or cookie value</Message> 
      </Error> 
      

      도움이 필요

는 그리고 내 laravel 코드 내부에, 나는 내 컨트롤러 내에서 다음 있습니다.

답변

1

가 미안 (충분하지 담당자) 언급 할 수는 없지만 서명 된 URL가 나오는 것을 기록 할 수 있습니다 : 당신의 자신의 공개 키를 다운로드하거나 업로드하는 방법에 대한 자세한 내용 그 후에?

관련 문제