Как задать кодировку в htaccess
Одна из самых частых проблем сайта - это его кодировка. И несмотря на это многие Web-мастера продолжают утверждать, что браузер сам выбирает кодировку. Действительно, он выбирает кодировку сам, но делает это не всегда правильно. Вот это и есть самая распространнёная ошибка с кодировкой: сайт в кодировке, допустим, UTF-8, а браузер настойчиво выбирает windows-1251. Вот как задать жёстко кодировку через файл htaccess, я расскажу в этой небольшой статье.
Для того, чтобы задать кодировку файла в htaccess достаточно написать в нём всего одну строчку:
AddDefaultCharset UTF-8
Если Вам нужна windows-1251, то тогда так:
AddDefaultCharset WINDOWS-1251
Всего одна строчка и теперь браузер, независимо от своего предпочтения, будет выбирать указанную кодировку. Сразу говорю, данный способ - это действительно мощный. Вы должны понимать, что раз браузер неправильно распознаёт кодировку Вашего сайта (игнорируя даже мета-тег "ContentType"), значит, на то есть свои причины, поэтому внимательно проверьте: везде ли всё хорошо отображается.
Надеюсь, что этой статьей я помог Вам решить проблему с кодировкой. А в следующей статье я расскажу о проблеме, связанной с кодировкой базы данных. Это тоже весьма частая проблема, которую многие не могут решить.
-
- Михаил Русаков
Комментарии (14):
Фух норм инструкция, а то вроде все UTF 8, а браузер кракозябры показывает
Ответить
а где находится htaccess
Ответить
http://myrusakov.ru/php-create-htaccess.html
Ответить
Рядом с index.php должно быть да .htaccess файл?
Ответить
Обычно, да.
Ответить
Михаил подскажите, а как поменять кодировку. Если исходить из вашего видео курса по php, то там по умолчанию стоит база данных mybase, а что делать если на хостинге приходится использовать другую базу данных(в смысле другое название)?? Не подскажите где изменить чтоб кодировка менялась не для Mybase, а к примеру 123base?
Ответить
Сделайте отдельную базу. А для существующей кодировку поменять можно SQL запросом.
Ответить
Дело все в том что, на локальном сервере всё работает, а вот разместил сайт на hostia по многочисленным рекомендациям а там кодировка уже не работает.
Ответить
Посмотрите в этой статье возможные причины: http://myrusakov.ru/php-encoding-problems.html
Ответить
а куда прописать AddDefaultCharset UTF-8, в какую строку, в какой тег?
Ответить
Это нужно прописать в файл .htaccess у себя на сервере, там нету тегов! Если у тебя нету сервера, тебе это не нужно.
Ответить
а-а-а-а! короче я сам протупил!! Спасибо!!
Ответить
AddDefaultCharset UTF-8 прописан, в htaccess изменил на UTF-8 но "?" на сайте сохраняется. Пожалуйста подскажите в чем дело.
Ответить
Спасибо, все заработало! с хромом и яндексом была проблема, а в мазиле отображалось правильно.
Ответить
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.