Mam aplikację, która pobiera treści z różnych źródeł. Zależy to od ustawienia nagłówka „Content-Type” na obrazach. Większość serwerów WWW robi to poprawnie, ale wygląda na to, że serwer Amazon S3 nie ustawia Content-Type.
Zakładam, że serwery Amazon są poprawnie skonfigurowane, więc jaki może być problem? Czy te obrazy nie zostały poprawnie przesłane? A może nie powinienem polegać na ustawionym typie treści?
Dzięki
Odpowiedzi:
Pliki przesłane do S3 muszą poinformować nagłówek Content-Type. Nie ma domyślnej definicji typu zawartości, takiej jak te, które można wykonać na „normalnym” serwerze WWW z treścią (co nie byłoby takie złe!) Na folder.
źródło
Podczas przesyłania obiektów do S3 istnieje możliwość ustawienia typu MIME, który będzie zwracany klientom w nagłówku Content-Type. S3 nie doda tego nagłówka samodzielnie, więc jeśli użytkownik nie ustawił tej wartości, nie zostanie zwrócony nagłówek Content-Type.
Serwery HTTP nie są wymagane do zapewnienia nagłówka Content-Type, więc sugerowałbym mechanizm rezerwowy. Być może mógłbyś spojrzeć na adres URL i zgadywać z rozszerzenia pliku? To trochę włamanie, ale zadziałałoby przynajmniej w podanym przykładzie.
źródło
Musisz to ustawić.
W konsoli zarządzania aws, jeśli przejdziesz do danego pliku, możesz kliknąć „właściwości”. Następnie u dołu ekranu na metadanych. Jeśli kluczowy typ zawartości jest ustawiony, zmień go na żądany, w przeciwnym razie dodaj nowy klucz, wybierz typ zawartości i ustaw odpowiednią wartość.
źródło