Русские странички не нарушая стандартов - это просто!
Здесь приведена по шаговая инструкция правильной подготовки ваших русских страничек для WWW:
Если у вас на страничках стоит выбор кодировок, выкиньте этот кусок HTML кода: он вам больше не понадобиться -- отныне все будет происходить автоматически.
Если у вас странички не в кодировке KOI8-R, перекодируйте их туда каким-нибудь конвертером -- смотрите раздел . Ничего страшного не произойдет: если все дальнейшее вы сделаете правильно, то в таком виде их по-прежнему можно будет редактировать, скажем, в Netscape Composer
без всякой заметной разницы. Мало того, в таком виде ваши странички будут одинаково хорошо видны для всех операционных систем без всяких переключателей кодировок, превратившихся в бич русского WWW.
Внимание! Данный пункт можно пропустить, если на вашем сервере стоит Apache или какая-либо его разновидность (то есть в 90% случаев) -- в этом случае необходимая информация может быть задана в настройках Apache.
Если же вы предполагаете частые переезды с сервера на сервер с неизвестными HTTPD, следуйте указаниям пункта.
Проверьте самую первую строчку ваших русских HTML документов, она должна выглядеть примерно так:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
Если такой строчки нет, или номер после слова HTML меньше 4.0, добавьте ее в самое начало.
Примечание для специалистов: атрибут LANG определен только в HTML 4.0 и выше, так что указание DTD обязательно.
Замените следующий за ней таг <HTML> на таг <HTML LANG=ru>, это укажет, что ваш документ на русском языке, и облегчит жизнь поисковикам.
Спросите вашего веб-мастера, что за штука стоит у вас в качестве веб-сервера, если он ответит:
что Apache или Apache/RUS:
в самом верхнем каталоге, содержащем ваши странички, создайте файл с именем .htaccess, доступный всем на чтение с такими строчками:
Если файл .htaccess уже есть, просто добавьте туда эти строчки.
Записанное в .htaccess распространяется на все подкаталоги вниз по дереву.
Подразумевается, что ваши HTML документы заканчиваются на .html; если они заканчиваются на .htm, поменяйте .html на .htm в предлагаемом образце.
При таких настройках не обязательно (но можно) указывать язык тагом <HTML LANG=ru, как это было описано выше.
Указание языка внутри HTML документа имеет приоритет над указанием для сервера.
Так как для текстовых (*.txt) документов никак нельзя указать язык внутри документа, указание для сервера -- это единственная альтернатива.
Если у вас на сервере стоит Apache/RUS, то рекомендуется отключить всякую автоматическую перекодировку, добавив в .htaccess директиву
CharsetTurnOff On
(работает начиная с версии Apache/RUS PL20).
ПРЕДУПРЕЖДЕНИЕ: в последних версиях Apache обработка файлов .htaccess по умолчанию выключена в главной конфигурации (директивой AllowOverride None), т.е. ваши установки не будут иметь никакого эффекта. В этом случае попросите вебмастера включить такую обработку для вашего каталога, добавив директиву
AllowOverride +FileInfo
в соответствующую секцию <Directory ...>
конфигурации Apache.
что NCSA:
в каждом каталоге, содержащем ваши странички, заведите файл с именем .htaccess, доступный всем на чтение с такими строчками:
Если файл .htaccess уже есть, просто добавьте туда эти строчки.
Подразумевается, что ваши HTML документы заканчиваются на .html; если они заканчиваются на .htm, поменяйте конец строки на .htm соответственно.
что CERN:
для каждого вашего каталога с русскими страничками создайте подкаталог .web, в него положите файлы с именами, сконструированными добавлением суффикса .meta к именам в главном каталоге. Каталог .web и файлы в нем должны быть доступны всем на чтение. Например, файлу index.html соответствует файл .web/index.html.meta и т.д. Каждый такой файл должен содержать следующую строчку
Content-Type: text/html; charset=koi8-r
(для HTML файлов) или
Content-Type: text/plain; charset=koi8-r
(для текстовых файлов).
что какой-нибудь другой HTTP сервер:
сперва попробуйте связать расширения .html и .txt по аналогии с решениями выше; если вы не знаете, как это сделать в вашем HTTP сервере, вам придётся редактировать непосредственно сами ваши странички: в секцию <HEAD> каждого HTML документа вставьте самой первой директивой следующий таг:
К сожалению, в этом случае невозможно указание кодировки для текстовых файлов (*.txt).
На этом все готово. При просмотре ваших страничек никто теперь не увидит мусора из умляутов вместо нормальных русских букв, и не придется больше выбирать кодировки!