Я потратил последние несколько часов на то, чтобы мой сайт проверил HTML 4.01 Strict, и я действительно преуспел в этом, но есть еще одно предупреждение, от которого я не могу избавиться. Предупреждение:
Несоответствие кодировки символов!
Кодировка символов, указанная в HTTP-заголовок (iso-8859-1) является отличается от значения в элемент (utf-8). Я буду использовать значение из заголовка HTTP (iso-8859-1) для это подтверждение.
Рассматриваемая страница www.dubiousarray.net/default.html. Как вы можете видеть из источника страницы, у меня есть следующий мета-элемент:
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
и я убедился, что файл default.html сохраняется с кодировкой UTF-8. Странным является то, что все остальные страницы на сайте проверяются без этого предупреждения, и они имеют один и тот же метатег и были сохранены точно так же. Я уверен, что это связано с конфигурацией сервера. Файл .htaccess выглядит так:
# Use PHP5 as default
AddHandler application/x-httpd-php5 .php
AddDefaultCharset UTF-8
но я испробовал все исправления, показанные на этой странице, и никто из них не работал. Есть ли у кого-нибудь идеи о том, как избавиться от этого предупреждения? Последнее, в Firefox, если вы щелкните правой кнопкой мыши на странице и выберите "Просмотреть страницу информации", default.html показывает как ISO-8859-1 а на других страницах отображается UTF-8.
Спасибо, Джейкоб
EDIT: что-то еще следует отметить, так это то, что весь html файл был создан и сохранен точно так же (кодировка символов установлена в UTF-8 без спецификации), но default.html является единственным, который не отображается как UTF-8. Поэтому я полагаю, что сервер делает что-то особенное для файла default.html, хотя я не уверен, что, поскольку его нет в файле .htaccess.