2015-03-27 27 views
5

cho ứng dụng web AdLit của tôi, tôi lưu trữ một số hình ảnh trên Amazon AWS S3. Nhưng những hình ảnh này không được trả lại trong bất kỳ phiên bản của Internet Explorer (thử nghiệm với IE8, IE9 và IE11)Hình ảnh được lưu trữ trên Amazon AWS S3 không được hiển thị trong Internet Explorer

bạn có thể kiểm tra điều này trên:

http://www.adlit.be/team

Những hình ảnh nhận được kết xuất trong Safari, Firefox và Chrome, nhưng không phải trong Internet Explorer.

Có ai có kinh nghiệm về vấn đề này không? Và làm thế nào nó có thể được cố định?

nhờ sự giúp đỡ của bạn,

Anthony

+0

Tôi cũng đang trải qua những gì tôi nghĩ là cùng một vấn đề, không sửa chữa trong tầm nhìn được nêu ra. Tôi thấy nó vẫn không hoạt động trên trang của bạn nhưng bạn có tìm thấy gì không? – sricks

+0

Nó có thể là một vấn đề với đá quý refile, mà bạn dường như đang sử dụng – JustMichael

+0

@JustMichael, nhưng nó hoạt động trong Chrome và Firefox. Om chỉ gặp vấn đề với IE – Toontje

Trả lời

2

Các bức ảnh là những hình ảnh JPEG nhưng tất cả chúng đều được đặt tên image không có phần mở rộng. Điều này có nghĩa là máy chủ của bạn không cung cấp cho họ một Loại nội dung hình ảnh. Máy chủ của bạn thay vì gửi một HTTP header của:

Content-Type:application/octet-stream 

Chrome và Firefox là rõ ràng đủ thông minh để nhận thấy rằng các yêu cầu đến từ một yếu tố <img> và để nhận ra định dạng JPEG từ nội dung nhị phân của chính nó. Nhưng bạn sẽ làm cho mọi việc dễ dàng hơn nhiều nếu bạn nhận được máy chủ của bạn để gửi một tiêu đề thích hợp hơn:

Content-Type:image/jpeg 

Tôi có hai đoán:

  1. Nếu bạn đổi tên ảnh của bạn trên máy chủ image-image.jpg hoặc image.jpeg thì máy chủ của bạn sẽ phỏng đoán Loại nội dung phù hợp và
  2. Với Loại nội dung chính xác, IE sẽ hiển thị ảnh.

Oh wait, Amazon S3. Tôi nghĩ rằng dịch vụ web từ S3 sẽ suy ra kiểu nội dung từ phần mở rộng của tệp, nhưng nếu không bạn có thể rõ ràng set metadata on S3 objects, bao gồm (đặc biệt) kiểu nội dung.

6




Theo W3C spec, hình ảnh thường được mime-ngửi bất kể những gì được khai báo trong các phản ứng máy chủ Content-Type tiêu đề.

Nhưng vì cũng có một tiêu đề độc quyền MS X-Content-Type-Options:nosniff, IE không trong trường hợp này thực hiện bước mime-sniff.   Và do đó, theo W3C, tiêu đề Loại Nội dung cung cấp loại mime cuối cùng.   Nhưng đó là "ứng dụng/octet-stream", không phải là loại hình ảnh được hỗ trợ.



(Fiddler lọc - click cho kích thước đầy đủ)

Các vấn đề liên quan