2013-03-02 6 views
10

Ich benutze Google App Engine mit Python und habe ein paar statische .png-Bilddateien, aber sie werden alle mit geliefert ein "image/x-png" Inhaltstyp. Dies ist ein Problem, wenn ich einen Browser wie Chrome verwende und versuche, diese Bilder anzuzeigen, da der Inhaltstyp nicht erkannt wird. Dadurch wird Chrome gezwungen, ihn als Binärdatei herunterzuladen, anstatt das Bild anzuzeigen.Stehe statische PNG-Dateien mit dem Inhaltstyp "image/png", nicht "image/x-png"

Wie kann ich App Engine diese mit dem richtigen "Image/Png" Mime-Typ dienen?

Antwort

12

Angenommen, Sie verwenden Java, wird dies normalerweise im Abschnitt mime-mapping in der Datei web.xml angegeben. Siehe zB here oder here.

In Ihrem Fall, ich

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

In Python würde versuchen, es scheint, dass Sie einig handler zu Ihrem app.yaml mit den sachgemäßen mime_type, zum Beispiel (ersetzen Sie mit Ihrer eigenen url und static_dir) hinzufügen sollen:

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

Sorry, ich hätte es für Python angegeben. Ich habe diese Seite früher in meiner Suche gefunden, konnte aber keine Entsprechung für die Datei python app.yaml finden. – DerekR

+0

Hinzugefügt. Nicht getestet. – leonbloy

+0

Aus irgendeinem Grund musste ich auch PIL auf der Bereitstellungsbox installieren. Bis es soweit war, diente es weiterhin als x-png ... –

Verwandte Themen