Бесплатно

Запуск сайта на WP

20 уроков, которые помогут вам стать владельцем домена и хостинга за 30 минут

Кодировка htaccess — как изменить

Каждый пользователь Интернета во время серфинга натыкался на сайты, которые отображаются некорректно. К примеру, на таких сайтах могли отображаться вместо понятных слов неясные закорючки в виде символов, дуг, иероглифов и так далее. Особенно высокая вероятность увидеть такой сайт, если вы перейдете на какой-нибудь китайский или японский портал. А все потому, что там используют иные кодировки, нежели в Рунете. Файл htaccess поможет предотвратить появление таких закорючек на вашем сайте.

Содержание

Зачем нужна кодировка на сайте

Существует основная кодировка сайта, так называемый Default Charset. Кодировка нужна для того, чтобы определять правило преобразования символов в кодовые значения.

Раньше кодировки были маленькими, и включали не более 7 бит информации, такие как ASCII. Теперь кодировок появилось большое множество, включая популярные UTF8, и Windows 1251.

Суть в том, что файл с разными кодировками будет выглядеть по-разному. Именно из-за этого и появляются ошибки на страницах сайта. Ваш браузер может быть настроен на одну кодировку, а на сервере в файле htaccess может быть указана другая, что в итоге превращает весь контент в месиво несвязных символов.

В файле htaccess вы можете указать параметр Default Charset, который будет определять главную кодировку для всего веб-ресурса. Также вы сможете прописать помимо Default Charset и другие кодировки, которые будут верно отображаться на страницах сайта. Обычно, вебмастера в обязательном порядке указывают UTF8 и Windows 1251, поскольку эти кодировки используются по умолчанию многими браузерами и текстовыми редакторами.

Чтобы избежать появления неразборчивых закорючек на сайте, вам следует либо настроить главную кодировку сайта при помощи Default Charset и запретить перекодировку файлов, либо прописать все допустимые кодировки в htaccess, включая UTF8, Windows 1251 и другие. Ведь главная проблема в том, что, к примеру, пользователь может отправить данные в другой кодировке, и тогда сервер не сумеет ее прочитать. Вам нужно предупредить такие действия.

Как настроить кодировки сайта в файле htaccess

Чтобы указать ключевую кодировку Default Charset, которая по умолчанию обрабатывается сервером и отправляется в браузер, воспользуйтесь опцией AddDefaultCharset. Она необходима для того, чтобы добавить (add) настройку кодировки по умолчанию (Default Charset). Дело в том, что при отправке HTTP-заголовков, в них в разделе Content-Type прописывается Charset, который передает браузеру, в какой кодировке рассматривать символы на сайте. Если хотите прописать UTF8, то укажите AddDefaultCharset UTF8, а если Windows 1251 — то AddDefaultCharset Windows 1251.

AddDefaultCharset — это основная директива, которая вам понадобится для настройки кодировок сайта в файле htaccess. Команда AddDefaultCharset окончательно решит проблему со скриптами, которые по умолчанию используют не UTF8 или Windows 1251, а какие-то другие неизвестные русским браузерам кодировки. Если бы вы не прописали параметр AddDefaultCharset, то в браузере появилась бы ошибка, а так все документы перекодируются в основную кодировку. Учтите, что не каждый браузер одинаково видит все кодировки, потому лучше используйте самые популярные — уже упомянутые UTF8 или Windows 1251.

Также вы можете избавиться от проблем с кодировками, если активируете автоматическую перекодировку файлов при помощи htaccess. Для этого используйте опцию CharsetSourceEnc, после которой пропишите основную кодировку ресурса, в которую будут перекодироваться все прочие. Если по каким-то причинам вам нужно убрать перекодировку, то пропишите в htaccess следующую строку: CharsetDisable On.

Как задать еще одну кодировку для некоторых разделов сайта

Хоть такое и бывает нечасто, но порой возникает потребность сделать одну страницу или целую часть раздела на другом языке. Другой язык — это автоматически и другая кодировку. А если у вас в корневом каталоге лежит файл htaccess, в котором написано AddDefaultCharset Windows-1251, то все страницы автоматически будут читаться по этой кодировке. В результате, пользователь зайдет в иностранный раздел вашего сайта и вместо статьи на финском языке увидите набор несвязных символов.

Чтобы разобраться с этой проблемой, вам необходимо будет создать отдельный файл htaccess и прописать в нем: AddType «text/html; charset=iso-8859-1» .html. Дело в том, что этот файл может действовать как на весь сайт, так и на отдельные его каталоге. Все зависит от того, где вы поместите htaccess. Если разместите второй htaccess внутри папки /fin/ с финским разделом сайта, то конфигурации будут работать только на эту часть ресурса. Остальные будут подчиняться главному файлу htaccess, размещенному в корне сайта. А при помощи указанной строки все файлы html в папке fin будут работать по ISO-8859-1.a

Понравилась статья?
Лайк автору
Загрузка...

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: