Как указать набор символов в заголовке ответа HTTP Content-Type?

Я проверил свой сайт с помощью приложения Page Speed от Google, и одним из предложений было указать набор символов в заголовке ответа HTTP Content-Type, утверждая, что это лучше, чем просто в метатеге.

Вот что я понимаю, что мне нужно написать: Content-Type: text/html; кодировка = UTF-8

..но где именно я должен положить это? Я на общем сервере.

Спасибо!

3 ответа

Решение

Apache: добавьте в ваш файл .htaccess в корневом каталоге:

AddDefaultCharset UTF-8

Это изменит заголовок от этого:

Content-Type text / html

...к этому:

Content-Type text / html; кодировка = UTF-8


nginx [ doc ] [ serverfault Q ]

server {
   # other server config...
   charset utf-8;
}

добавлять charset utf-8; в блок сервера (и перезагрузите конфигурацию nginx)

Когда я добавил это, мой заголовок ответа выглядел так:

HTTP / 1.1 200 ОК
Тип содержимого: text/html,text/html;charset='UTF-8'
Варьируется: Accept-Encoding
Сервер: Microsoft-IIS/7.5

В Apache вы используете http://httpd.apache.org/docs/2.2/mod/core.html

С IIS вы редактируете тип MIME для типа файла в списке файлов.

С большинством серверных технологий, таких как PHP или ASP.NET, есть метод или свойство, предоставляемое этой технологией. Например, в ASP.NET вы можете установить его в config, page или code code-behind.

Другие вопросы по тегам