Pull to refresh

Comments 25

Как есть жопой, если руки связаны.
Интересно, конечно, но, имхо, такой конкретный костылище не стоит того, чтобы вопреки древнему бесплатному хостингу пытаться выкладывать туда непременно в правильном utf-8.
Но тут встаёт философский вопрос: а кому лучше знать кодировку документа — серверу (автору .htaccess) или самому HTML-документу (его автору)?
Не очень понятно… вообще-то .htaccess это не чужак-«сервер», обычно он относится всё же к «самому HTML-документу» и «автор» чаще всего там один и тот же как раз. И если там и там разные кодировки указаны, то тут уж этот автор ССЗБ, как говорится.
В данном случае автор статей — публицист, а автор .htaccess — программист. Они между собой не знакомы и никак не связаны, принадлежа к разным структурам в разных городах. И программист вдобавок вообще не обязан сотрудничать с публицистом. Приходится выкручиваться.
в этом случае должны быть прописаны/проговорены общие правила сосуществования.
Вы о чём? В данном случае хостеру это не нужно, это проблема публициста.
Как вариант, проще один раз вывести всплывающее окошко с текстом «Переключи кодировку на UTF8, сцуко!» и записать в куку, что окошко показывалось.
Я думал над этим. Но дёргать безвинного посетителя посчитал неэтичным. Тем более, уже имел отзывы от знакомых ламеров, которые не смогли переключить кодировку.
> «Пользователь может получить читабельный текст — только если догадается вручную переключить кодировку в браузере.… Перекодировать тексты? Более достойным и интересным показалось поставить Javascript-«заплатку».»

Лучше и достойнее перекодировать текст статьи! Это делается за несколько секунд.
Нет, не лучше. Я потом собираюсь те же тексты выложить на нормальный хостинг и не хочу путаться в их версиях с разными кодировками. Сделано уже в UTF-8, значит сделано, а отступление — не наш метод.

Кстати: если знаете, как за несколько секунд перекодировать в Windows-1251 статью, в которой полно символов за пределами этой кодировки, подскажите.
> «Я потом собираюсь те же тексты выложить на нормальный хостинг и не хочу путаться в их версиях с разными кодировками»

Можно узнать сколько у Вас статей?
А покажите же нам саму статью!
По мне так тоже грамотным решением будет перекодировка статьи в windows-1251
Ну, вот, например. Хотя не понимаю, чем это Вам поможет.

Перекодировать — и хранить две копии? И так прогибаться ради причуд устаревшего хостинга?

Странные люди, набросились с упрёками, что я зря огород горожу. Я же так и написал прямо, что это кунштюк, в развлекательно-образовательных целях. Правильное решение — это, конечно, переход на другой хостинг.
Перекодировать — это пара минут. Хранить это пара мегабайт. В вашем примере вообще нет ничего такого сложного
Да, пара минут; с риском что-нибудь пропустить. Хранить — это не столько мегабайты, сколько опять же риск перепутать разные версии. И ради чего? Ради уважения к неправильному HTTP-заголовку?

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

Колабборационизм, надо же… Если Вы выросли из возраста лепки куличиков из песка, песочница стала врагом?
Не врагом, но уж если приходится там что-то лепить, так уж с фантазией!
Причина, по которой браузеры считают заголовок Content-Type более весомым, называется RFC-2070.
For definiteness, the «charset» parameter received from the source of the document should be considered the most authoritative, followed in order of preference by the contents of a META element such as the above, and finally the CHARSET parameter of the anchor that was followed (if any).

Почему так, а не иначе? Читайте RFC, там написано :)
Кроме того, существуют перекодирующие прокси-серверы. После того, как документ прошел через такой сервер, мета-тег теряет всякий смысл.
UFO just landed and posted this here
Это не соответствует условиям задачи. Задача была добиться результата на том же хостинге.
Мне почему-то кажется, что объект Win1251 вполне можно оптимизировать. До 0x7F там идут одинаковые цифры. А дальше — просто перечисление в значениях. Поэтому можно ключи в массив, а значения динамически генерировать.

А вообще — не пробовали <meta charset=«UTF-8»/>?
Мне почему-то кажется, что объект Win1251 вполне можно оптимизировать. До 0x7F там идут одинаковые цифры.


Расписано для наглядности. Но я не уверен, что это была бы оптимизация. Код занял бы меньше места, зато потребовал бы больше операций.

А вообще — не пробовали <meta charset="UTF-8"/>?


А Вы статью читали? Этот сервер шлёт кодировку в заголовке, а информация из HTTP-заголовков приоритетна над метатегами.
Sign up to leave a comment.

Articles