在HTTP标头中指定字符集

时间:2015-05-15 14:36:26

标签: utf-8 character-encoding http-headers

使用Google PageSpeed测试人员时,我会收到以下信息:

  

以下资源的HTTP标头中未指定字符集。在HTTP标头中指定字符集可以加快浏览器呈现速度   http://www.ntainc.com/

我到处搜寻,似乎无法弄清楚为什么它不会阅读"我的charset。我把它列在html文档标题中:

<meta charset="utf-8">

在我的web.config文件中:

<?xml version="1.0" encoding="UTF-8"?>

并且有一个.htaccess文件:

AddDefaultCharset utf-8

我相信我们的服务器是IIS。我错过了什么?

1 个答案:

答案 0 :(得分:1)

警告是指HTTP Content-Type标头。它由您的网络服务器发送给客户端,如下所示:

Content-Type: text/html

需要像这样发送:

Content-Type: text/html; charset=utf-8

您需要检查您的网络服务器配置。您的.htaccess添加应该在标题中添加charset属性,但显然不是。所以要么把它放在错误的.htaccess文件中,要么服务器忽略它。

HTML包含<meta charset>标记这一事实与警告无关,因为HTML只是HTTP响应体内的任意数据(尽管它允许支持HTML5的客户端处理您的UTF- 8正确编码HTML。)

您的web.config字符集无关紧要,因为它只能由您的网络服务器解释,而不是客户端。