2013-03-02 24 views
10

Używam silnika aplikacji Google w Pythonie i mam kilka statycznych plików graficznych .png, ale wszystkie są podawane z typ zawartości "image/x-png". Jest to problem, gdy używam przeglądarki takiej jak chrome i próbuję wyświetlać te obrazy, ponieważ typ zawartości jest nierozpoznany, co zmusza chrome do pobrania go jako pliku binarnego zamiast wyświetlania obrazu.Obsługuj statyczne pliki PNG z typem treści "image/png", a nie "image/x-png".

W jaki sposób mogę sprawić, aby App Engine wyświetlał je przy użyciu odpowiedniego typu mime "image/png"?

Odpowiedz

12

Zakładając, że używasz Javy, jest to normalnie określone w sekcji mime-mapping w pliku web.xml. Zobacz np. here lub here.

w Twoim przypadku, to staram

<mime-mapping> 
     <extension>png</extension> 
     <mime-type>image/png</mime-type> 
</mime-mapping> 

w Pythonie, wydaje się, należy dodać kilka handler do swojej app.yaml ze jest właściwa mime_type, na przykład (zastąpić własnymi url i static_dir):

handlers: 
- url: /static/*.png 
    static_dir: static 
    mime_type: image/png 
+0

Przepraszam, powinienem był określić, że jest dla Pythona. Znalazłem tę stronę wcześniej podczas wyszukiwania, ale nie mogłem znaleźć odpowiednika dla pliku pythona app.yaml. – DerekR

+0

Dodano. Nie testowany. – leonbloy

+0

Z jakiegoś powodu, również musiałem zainstalować PIL na polu wdrażania. Aż do tego czasu nadal służyłem jako x-png ... –

Powiązane problemy