Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Установка кодировки
 
 автор: demonow   (18.01.2012 в 13:21)   письмо автору
 
 

Народ, на что в первую очередь обращает внимание браузер когда пытается подставить кодировку?? на тег "мэта"??
Поэксперементировав с кодировками хочу уточнить как работает браузер и апачи в даных ситуациях?
1на апачи весит файл с кодировкой windows-1251, adddefaultcharset отключен, есть тег мета в файле с указаной той же кодировкой.
Результат- браузер выводит док. в кодировке windows-1251.Все читабельно.
2.на апачи весит файл с код-кой windows-1251 adddefaultcharset = UTF-8 есть тег мета в файле с кодировкой windows-1251.
Результат- браузер открывает файл в UTF-8- нечетабельно.
3.Все три кодировке везде одинаковы- все четабельно.
Получается adddefaultcharset имеет самый высокий приоритет даже над тегом мета.??
Помогите понять пож.

  Ответить  
 
 автор: cheops   (18.01.2012 в 13:58)   письмо автору
 
   для: demonow   (18.01.2012 в 13:21)
 

adddefaultcharset принудительно отправляет HTTP-заголовок с кодировкой. При работе браузера и сервера в первую голову оба ориентируются на протокол HTTP, если кодировка указана HTTP-заголовком, браузер использует именно её. Если она не указана, он копается в META-тэге, хотя может быть и обратная ситуация (как браузер написан), но у вас именно первый случай и он вообще говоря в большинстве случаев подавляющий. От разработчика же требуется, чтобы кодировка везде была указана верно. Т.е. не следует нигде указывать кодировку отличную от той, которая на самом деле нужна, так как машина без явной подсказке кодировку выяснить не может (может конечно, но до определенной степени и не всегда точно, да и усилий это требует изрядных).

  Ответить  
 
 автор: demonow   (18.01.2012 в 16:49)   письмо автору
 
   для: cheops   (18.01.2012 в 13:58)
 

Тоесть самый нормальный(распостраненный) способ это указание кодировки в adddefaultcharset или теге мета или там и там??
А заголовок ответа сервера тоже снифером можно глянуть??

  Ответить  
 
 автор: cheops   (18.01.2012 в 17:46)   письмо автору
 
   для: demonow   (18.01.2012 в 16:49)
 

Самый распространенный способ, это установить в Мета-тэге. Дело в том, что сервер может обслуживать несколько сайтов, которые используют разные кодировки, сейчас допустим есть UTF-8, а раньше многоязычные сайты использовали разные кодировки. В общем лучше попозже кодировку назначать... adddefaultcharset хорошо использовать когда у вас весь сервер и сайт работают в одной кодировке и изменений не планируется (однако, даже в этом случае лучше расчитывать на ситуацию, когда директива adddefaultcharset не будет установлена).

  Ответить  
 
 автор: demonow   (18.01.2012 в 17:52)   письмо автору
 
   для: cheops   (18.01.2012 в 17:46)
 

Если на одном сервере несколько сайтов можно ведь в .ht..s установить кодировку для каждого из них?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования