2013-03-02 111 views
10

我正在使用带有Python的Google应用程序引擎,并且有一对静态.png图像文件,但它们全部被提供一个“image/x-png”内容类型。当我使用Chrome浏览器并尝试查看这些图像时,这是一个问题,因为内容类型无法识别,这会迫使Chrome将其下载为二进制文件,而不是显示图像。用“image/png”内容类型服务静态PNG文件,而不是“image/x-png”

我该如何让App Engine以正确的“image/png”MIME类型来提供这些服务?

回答

12

假设您使用的是Java,这通常在web.xml文件的mime-mapping部分中指定。参见例如herehere

在你的情况,我想尝试

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

在Python,看来你应该有些handler与此时,相应的mime_type添加到您的app.yaml,例如(用自己的urlstatic_dir替换):

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

对不起,我应该指定它的python。我在我的搜索中发现了此页面,但找不到与python app.yaml文件等效的内容。 – DerekR 2013-03-02 22:45:18

+0

已添加。未经测试。 – leonbloy 2013-03-03 02:47:15

+0

出于某种原因,我还需要在部署框中安装PIL。直到我做了,它继续作为x-png ... – 2013-03-08 03:05:51