LINUX.ORG.RU

apache и смена кодировки


0

0

Добрый день!

Установлен apache 2.2 хочется чтобы информация клиентским браузерам отдавалась в кодировке koi8-r, устанавливаю параметр в httpd.conf

AddDefaultCharacter = koi8-r

У клиентов все равно в браузере кодировка Юникод (UTF8), а хочется Кириллица (KOI8-R), где глючит?

Как узнать в какой это кодировке - ÓÅÒ×ÅÒÁ?



Последнее исправление: kiotr (всего исправлений: 1)

хочется Кириллица (KOI8-R), где глючит?

Хотелка у тебя глючит, если честно. AddDefaultCharset, а не AddDefaultCharacter, и «=» не нужно.

thesis ★★★★★
()
Ответ на: комментарий от thesis

Да:

AddDefaultCharset koi8-r
Еще можно добавить:
IndexOptions ... Charset=koi8-r
, чтобы список файлов на кириллице показывался правильно (если разрешено отображение списка файлов в директории без индексного файла).

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от thesis

Хотелка не глючит, уже запарился :)

опечатка вышла, проверил имеем в httpd.conf

AddDefaultCharset KOI8-R

И все равно у клинтов в браузере UTF8

kiotr
() автор топика
Ответ на: комментарий от kiotr
curl -I localhost
HTTP/1.1 200 OK
Date: Tue, 07 Sep 2010 08:42:36 GMT
Server: Apache
Last-Modified: Mon, 30 Aug 2010 12:41:26 GMT
ETag: "bb7-1d9-48f09c85f2980"
Accept-Ranges: bytes
Content-Length: 473
Content-Type: text/html; charset=koi8-r

Если у вас так же, смотрите заголовки страниц. И, возможно, у клиента браузер берет страницы из кэша.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от kiotr

Тупой вопрос: а сами файлы/данные у тебя точно в КОИ?

thesis ★★★★★
()
Ответ на: комментарий от Eddy_Em

У меня

curl -I localhost
HTTP/1.1 403 Forbidden
Date: Tue, 07 Sep 2010 14:37:36 GMT
Server: Apache/2.2.3 (CentOS)
Accept-Ranges: bytes
Content-Length: 5043
Connections: close
Content-Type: text/html; charset=KOI8-R

Кэш у клиента очистил
ничего не поменялось

kiotr
() автор топика
Ответ на: комментарий от kiotr

locale выдает

LANG=ru_RU.KOI8-R
LC_CTYPE=«ru_RU.KOI8-R»
LC_NUMERIC=«ru_RU.KOI8-R»
LC_TIME=«ru_RU.KOI8-R»
LC_COLLATE=«ru_RU.KOI8-R»
LC_MONETARY=«ru_RU.KOI8-R»
LC_MESSAGES=«ru_RU.KOI8-R»
LC_PAPER=«ru_RU.KOI8-R»
LC_NAME=«ru_RU.KOI8-R»
LC_ADDRESS=«ru_RU.KOI8-R»
LC_TELEPHONE=«ru_RU.KOI8-R»
LC_MEASUREMENT=«ru_RU.KOI8-R»
LC_IDENTIFICATION=«ru_RU.KOI8-R»
LC_ALL=

файлы на русском языке через more в консоли просматриваются

kiotr
() автор топика
Ответ на: комментарий от kiotr

Директивы META с указанием кодировки в теле html присутствуют? Я не интересовался никогда, вроде бы некоторые браузеры отдают приоритет указанной в META кодировке.

thesis ★★★★★
()
Ответ на: комментарий от thesis

У меня все на perl и директивы META в теле нет

kiotr
() автор топика
Ответ на: комментарий от Eddy_Em

Вот curl http://localhost/Office


<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<title>óÔÁÔÕÓ ÓÅÒ×ÅÒÁ Office</title>
<link rel=stylesheet type=«text/css» href=«/Office/html/Office_stnd.css» title=«CSSFile»>
<meta http-equiv=«pragma» content=«no-cache»>
<script src=«/Office/html/sorttable.js»></script>
</head><body onLoad=«document.getElementById('NavMenu').style.height=document.body.scrollHeight»>
<a href="http://Office.sourceforge.net«><img src=»/Office/html/logo.gif" hspace=«5» vspace=«7» border=«0»></a><br>
<div id=«Content»>
<div class=«h1»>óÔÁÔÕÓ ÓÅÒ×ÅÒÁ Office</div>

kiotr
() автор топика
Ответ на: комментарий от kiotr

Пожалуйста: у вас неправильная кодировка в самом файле. А редактор, по-видимому, автоматом ее определяет.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Да, команда

grep -Ri charset /etc/httpd/conf

показывает

/etc/httpd/conf/httpd.conf:IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable Charset=koi8-r
/etc/httpd/conf/httpd.conf:AddDefaultCharset KOI8-R

kiotr
() автор топика
Ответ на: комментарий от kiotr

В каком месте /etc/httpd/conf/httpd.conf у вас расположена AddDefaultCharset? Должна быть где-нибудь в глобальных определениях.

И попробуйте написать маленькими буквами koi8-r.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

AddDefaultCharset находится в httpd.conf в

### Section 2: 'Main' server configuration

-------------------------------------------

Попробовал
AddDefaultCharset koi8-r

ни чего не поменялось

kiotr
() автор топика

Очень интересный тред.

И что. при всем при этом если выставить в браузере «автоматическое определение» или явно «KOI8-R», то там отображаются кракозябры?

Или что значит фраза в топике «У клиентов все равно в браузере кодировка Юникод (UTF8)»?

thesis ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.