이미지에 서명 된 URL을 사용하려고 시도했는데 한 번해볼 수있었습니다. 그런데, 나는 그것을 삭제하고 그것을 다시 한번하려고 노력하고 나는 그것을 할 수 없다. 여기Cloudfront not S3에 액세스 할 수 없습니다.
내가 지금까지 무엇을했는지 있습니다 :
- 는 IAM 관리 콘솔에서 CloudFront를 키 쌍을 만들었습니다. 개인 및 공개 키를 다운로드했으며 액세스 키 ID = XXXXXXXXXXXXXXXXXXXX에 주목했습니다.
- S3 버킷이 생성되었습니다. 나의 버킷
- 제한 버킷 액세스 : 없음 사용자 정의 구성
- 설정은 다음과
- 원산지 도메인 이름을 가진 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 코드 내부에, 나는 내 컨트롤러 내에서 다음 있습니다.
나는 그것을 검사했다. 나는 그것을했다. 아직도 그것을 얻을 수 없습니다. –