Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Перекодировки и метатеги

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Интернет
Предыдущая тема :: Следующая тема  
Автор Сообщение
epros
Гость





СообщениеДобавлено: Вс Апр 27 2003 12:59    Заголовок сообщения: Перекодировки и метатеги Ответить с цитатой

Народ, объясните мне одну вещь, в которую я никак не могу врубиться: почему все так не любят метатеги с указанием charset?

Постоянно во всех «советах вебмастерам» встречаю указание: «ни в коем случае не вставляйте в свои страницы метатег с указанием charset». Ладно, объяснение вробе бы налицо: многие сервера настроены таким образом, чтобы перекодировать страницу в соответствии с предпочтениями клиента. Поэтому, если они к тому же еще и не умеют вырезать метатеги, то клиент может получить страницу, действительная кодировка которой не будет совпадать с тем, что указано в метатеге. Такую страницу клиент просто не сможет прочитать, как ни мучайся с настройками кодировки в своем браузере. С другой стороны, если метатега нет, то клиент, получив белиберду на своем экране, может свободно переключить кодировку. Но предполагается, что этого и не должно случиться, поскольку сервер уже «правильно» перекодировал страницу - в соответствии с той кодировкой, которая была установлена в браузере.

Почему я не могу понять этого объяснения?

1. А зачем вообще решать за вебмастера, в какой кодировке показывать его материал? Это - его авторское произведение, хочет, чтобы оно было в simplified chinese, пусть так и будет. Если русскоязычный клиент не понимает win-1251, а понимает только koi8-r, то это его проблема. Да и разве такое реально встречается? По-моему, если уж браузер русифицирован, все основные русские кодировки он понимать будет. Ну, стояла у клиента кодировка по умолчанию koi8-r, а мы его попросили показать страницу в win-1251, что его браузер тут же и сделал. Что плохого в таком автоматическом переключении кодировки? Зато вебмастер будет избавлен от геморроя отслеживания неподвластных ему перекодировок его авторского материала.

2. И что хорошего в корявых попытках автоматической подстройки под «предпочтения» клиента, о которых сам клиент скорее всего даже и не подозревает? Ведь как обычно бывает - установили сто лет назад по случаю в браузере кодировку koi8-r, и давно уже забыли об этом. А сервер пыжится, перекодирует в koi8-r то, что как ему кажется было написано в win-1251 (потому что расширение у файла htm, а не html). А на самом-то деле может оказаться, что автор материала как раз и подразумевал koi8-r, и даже метатег соответствующий записал. Но где-то в процессе промежуточного хранения материала кто-то сократил название файла (например, чтобы в какой-нибудь DOS оно нормально воспринималось), а потом как-то забыли подправить расширение в соответствии с понятиями того сервера, на котором размещается файл.

3. Почему бы вообще не запретить перекодировки? Пусть файл показывается как есть. В конце концов, если автор материала хочет, чтобы он показывался в различных кодировках в зависимости от предпочтений клиента, пусть он об этом и заботится: пишет скрипт, который определяет предпочтения клиента и занимается перекодировками. Почему у администратора сервера по этому поводу должна болеть голова?
Вернуться к началу
Dmitry.Karpov http://prof
Гость





СообщениеДобавлено: Вс Апр 27 2003 15:41    Заголовок сообщения: Ну, есть много случаев, вплоть до текстовых (неграфических) браузеров... Ответить с цитатой

а) Потому что есть текстовые (неграфические) браузеры, которые должны показывать текст в той кодировке, на которую настроен экран.

б) Потому что при операции copy+paste текст д.б. в кодировке операционной системы.

в) Потому что META-тэги есть замена HTTP-заголовкам, которые должен выдавать сервер; так что лучше пользоваться оригиналом.
Вернуться к началу
epros
Гость





СообщениеДобавлено: Вс Апр 27 2003 17:30    Заголовок сообщения: Re: Ну, есть много случаев, вплоть до текстовых (неграфических) браузеров... Ответить с цитатой

> а) Потому что есть текстовые (неграфические) браузеры, которые должны показывать текст в той кодировке, на которую настроен экран.

Да, это проблема - так или иначе, такой клиент в инете много чего не увидит. Но стоит ли проблему клиента перекладывать на вебмастера? А может я И НЕ ХОЧУ чтобы мой материал читали такие клиенты?

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

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

> б) Потому что при операции copy+paste текст д.б. в кодировке операционной системы.

Да, это тоже неудобство для клиента. Но мне почему-то кажется концептуально более правильным, чтобы проблемы такого рода решал сам клиент: для этого и существуют программы перекодировщики. В конце концов, если я приобретаю диск, read.me файл к которому написан в кодировке dos-866, а я хочу его прочитать в Windows Nopepad, какое я имею право осуждать разработчиков за то, что они не предусмотрели автоматический определитель моей предпочтительной кодировки и соответствующий конвертер? Не хочешь - не читай, хочешь прочитать - сам конвертируй в удобный тебе вид.

> в) Потому что META-тэги есть замена HTTP-заголовкам, которые должен выдавать сервер; так что лучше пользоваться оригиналом

Да, замена HTTP заголовкам. Концептуально правильнее всего, по-моему, чтобы HTTP-заголовки с указанием кодировки формировал автор материала, а не кто-то от его имени. Но если уж он не имеет такой возможности, лучше их вообще не посылать.
Вернуться к началу
Dmitry.Karpov http://prof
Гость





СообщениеДобавлено: Вс Апр 27 2003 18:26    Заголовок сообщения: Не хочешь, чтобы твой сайт смотрели? Вообще не публикуй! Ответить с цитатой

а1) Если ты не хочешь, чтобы твой материал читали некоторые клиенты, для начала неплохо было бы написать об этом явно, открытым текстом. Но я думаю, ты сам понимаешь, что подобное проявление неуважения отпугнет и других читателей.

а2) Зависит от условий соглашения автора с издателем - предоставил ли автор издательству право перевода и публикации без уведомления. Читай договор.

а3) Право на перекодировку появляется в силу размещения сайта на сервере с перекодировкой. Параметры же надо писАть в процентной кодировке.

б) Ты никогда не видел MasterBootRecord от русской W'9x? Там сообщения на русском языке, в то время как при выоде этих сообщений экран не м.б. русифицирован!
Ну а реально далеко не все системы имеют возможность перекодировки - собственно, полноценно это делает только HTTP.

в) Есть кое-кто поглавнее вебмастера - это заказчик, который и решает, размещать ли сайт с перекодировкой или без.

PS: Сходи на мой сайт, почитай про локальные и глобальные сети, про удобный для посетителей сайт, про налоговластие...
Вернуться к началу
epros
Гость





СообщениеДобавлено: Пн Апр 28 2003 11:25    Заголовок сообщения: В принципе ты во всем прав, но мы немного о разном Ответить с цитатой

Никто не спорит с тем, что «клиент всегда прав». Но о том, чтобы удовлетворить клиентов, должен заботиться автор сайта, а не администратор сервера. Администратор сервера по-сути только предоставляет услуги АВТОРУ сайта по хранению и доставке его материалов клиентам. Ну, может быть плюс еще некоторые ОГОВОРЕННЫЕ услуги по обработке этих материалов. В последнюю категорию, собственно, и входят перекодировки. Или я здесь в чем-то не прав?

Я понимаю, что когда размещаю сайт на сервере с перекодировкой, то соглашаюсь с ней. Это очень похоже на покупку «с нагрузкой», распространенную в советские времена. И хотел бы отказаться от «дополнительной услуги», да нельзя: не хочешь брать что дают, вообще иди отсюда.

Вообще-то я даже и не против перекодировок, если точно знаю, что будет перекодировано, когда и как. Почему многие ругают программы-переводчики? Да наверное потому, что автору статьи про Microsoft Windows будет не очень приятно, когда в переводе его статьи на русский язык появится упоминание «Мелко-мягких Окон». Автору хочется контролировать перевод, а программа лишает его такой возможности. Так и с автоматической перекодировкой: если я не уверен, что перекодировано будет только то, что нужно, когда нужно и так как нужно, мне проще отказаться от дополнительных услуг по перекодировке, самому отловить строчку Accept-Charset в заголовке запроса и функцией собственного скрипта перекодировать то, что мне нужно.

А относительно процентной кодировки параметров: ты наверное имел в виду urlencode? Боюсь, что это не спасает. Если параметр запроса - результат заполнения клиентом текстового поля формы, чтобы он правильно раскодировался, все равно нужно знать кодировку клиента. Если я знаю, в какой кодировке послал ему страницу с формой, то мне известна и кодировка посланного с этой формы запроса. Если же нет - возникают проблемы.

Сайт почитаю обязательно.
Вернуться к началу
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Интернет Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...