我刚刚尝试了几次为Google App Engine提供的静态文件定义字符集,但都失败了。
文件的标题部分包含正确的meta-equiv标签:
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
但是它不是作为header传递的,浏览器需要从实际的文档中拾取它。
当然,如果我使用脚本(或Python谷歌应用引擎程序),那么我可以得到它作为响应头正确交付。
Content-Type: text/html; charset=UTF-8
我试图添加到app.yaml文件行:
- url: /
static_files: root/create.html
upload: root/create.html
http_headers:
Content-Type: text/html; charset=UTF-8
但是appfg .py告诉我:URLMap类型对象的意外属性'http_headers'。在"9 oxnet/应用程序。
要修复静态文件的字符集头问题,您需要在app.yaml文件中定义字符集:
- url: /
static_files: root/create.html
upload: root/create.html
mime_type: text/html; charset=UTF-8
现在静态文件的Content-Type头也正确包含字符集信息。
Content-Type: text/html; charset=UTF-8
如果标题中没有包含字符集信息,有些浏览器不会尽快解析页面。