Content-Type 헤더를 보내지 않는 Amazon S3


10

다양한 소스에서 콘텐츠를 다운로드하는 응용 프로그램이 있습니다. 이미지에 설정된 "Content-Type"헤더에 의존합니다. 대부분의 웹 서버는이 작업을 올바르게 수행하지만 Amazon S3 서버가 Content-Type을 설정하지 않은 것 같습니다.

Amazon 서버가 올바르게 구성되어 문제가 될 수 있다고 가정합니다. 이러한 이미지가 올바르게 업로드되지 않습니까? 또는 설정중인 컨텐츠 유형에 의존해서는 안됩니까?

감사


Amazon S3에 파일을 업로드 할 때 콘텐츠 유형을 설정할 수 있다고 생각합니다. 그래도 기본 콘텐츠 형식 헤더에 대해 무엇을하는지 모르겠습니다. 그리고 이것은 파일이 아닐 때 분명히 도움이되지 않습니다.
WheresAlice

나는 그것을 보았지만 계정이 없으면 시도해 볼 수 없습니다. 답을 아는 것이 문제를 해결하지는 못하지만 content-type에 의존하지 않는 것이 좋습니다.

답변:


7

S3에 업로드 된 파일은 Content-Type 헤더에 알려야합니다. 폴더 당 "정상적인"컨텐츠 웹 서버에서 수행 할 수있는 것과 같은 기본 컨텐츠 유형 정의는 없습니다 (나쁜 생각은 아닙니다!).


1

S3에 객체를 업로드 할 때 Content-Type 헤더에 클라이언트에 반환 될 MIME 유형을 설정하는 옵션이 있습니다. S3는이 헤더를 자체적으로 추가하지 않으므로 사용자가 해당 값을 설정하지 않으면 Content-Type 헤더가 리턴되지 않습니다.

HTTP 서버는 Content-Type 헤더를 제공 할 필요가 없으므로 폴백 메커니즘을 제안합니다. 아마도 URL을보고 파일 확장자를 추측 할 수 있습니까? 그것은 약간의 해킹이지만 적어도 제공 한 예에서는 효과가 있습니다.


1

이것을 설정해야합니다.

AWS Management Console에서 문제의 파일을 찾아 보면 "속성"을 클릭 할 수 있습니다. 그런 다음 메타 데이터 화면 하단에서. Key Content-Type이 설정되어 있으면 원하는 것으로 변경하고, 그렇지 않으면 새 Key를 추가하고 Content-Type을 선택한 후 적절한 값으로 설정하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.