nixp.ru v3.0

21 октября 2017,
суббота,
09:42:02 MSK

DevOps с компанией «Флант»
anonymous написал 9 января 2005 года в 04:16 (453 просмотра) Ведет себя неопределенно; открыл 1814 темы в форуме, оставил 5575 комментариев на сайте.

У меня с недавнего времени неправильно отображается сайт. Итак смотрим.

Вот такой запрос делает моя Mozilla 1.0 (выловлено etherealом)

GET / HTTP/1.1

Host: www.nixp.ru

User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.7.5) Gecko/20041111 Firefox/1.0 (Debian package 1.0

-2)

Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5

Accept-Language: ru,en-us;q=0.7,en;q=0.3

Accept-Encoding: gzip,deflate

Accept-Charset: KOI8-R,utf-8;q=0.7,*;q=0.7

Keep-Alive: 300

Connection: keep-alive

Cookie: th=default; cp=koi

Теперь попробуем сами (только выкинем Accept-Encoding: gzip,deflate):

(нужные строки выделены ^^^^^)

$telnet www.nixp.ru 80

GET / HTTP/1.1

Host: www.nixp.ru

User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.7.5) Gecko/20041111 Firefox/1.0 (Debian package 1.0

-2)

Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5

Accept-Language: ru,en-us;q=0.7,en;q=0.3

Accept-Charset: KOI8-R,utf-8;q=0.7,*;q=0.7

Keep-Alive: 300

Connection: keep-alive

Cookie: th=default; cp=koi

Connection: keep-alive

Cookie: th=default; cp=koi

HTTP/1.1 200 OK

Date: Sun, 09 Jan 2005 01:08:26 GMT

Server: Apache

Keep-Alive: timeout=15, max=100

Connection: Keep-Alive

Transfer-Encoding: chunked

Content-Type: text/html; charset=windows-1251

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

f47

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Вероятно, вам надо поправить настройки вашего сервера.

Смотреть в сторону AddDefaultCharset.

Дмитрий Шурупов

Есть подозрение, что проблема устранена. Проверяйте.

anonymous

Нет. Проблема осталась. Причем только в Firefox 1.0. В Opera и MSIE все в порядке.

Вероятно потому, что MSIE ни слова про Accept-Charset не говорит и сервер отдает все в cp1251.

А для Opera, кодировка в meta, видимо, приоритетна.

Можно конечно поковырять в браузере настройки типа Default Charset, но .. сейчас у меня стандартная настройка (я ничего не ковырял). И я думаю вы заинтересованы, чтобы все работало именно при стандартных настройках.

Да.. и затачивать браузер под сайт .. это как-то :-\

http://nick.web.ur.ru/nixp.ru.png 52K

Дмитрий Шурупов

Проблема в том, что я только что специально поставил firefox с нуля, загрузил nixp.ru, поставил koi8-r — и что бы вы думали? Все в порядке. Отображается без проблем, да и в info page тоже всюду koi8-r.

P.S.

На GET /cgi-bin/go.pl?q=index;c=koi HTTP/1.1 выдают:

HTTP/1.1 200 OK

Date: Sun, 09 Jan 2005 11:03:06 GMT

Server: Apache

Set-Cookie: cp=koi; path=/; expires=Sunday, 17-Jan-2038 00:00:00 GMT

Set-Cookie: th=default; path=/; expires=Sunday, 17-Jan-2038 00:00:00 GMT

Keep-Alive: timeout=15, max=100

Connection: Keep-Alive

Transfer-Encoding: chunked

Content-Type: text/html; charset=koi8-r

Т.е. откуда берется win-1251 мне вообще непонятно.

anonymous
Dmitry Shurupov
поставил koi8-r

Если я руками ставлю koi8-r то, как ни странно, тоже все отображается нормально. И в инфе koi8-r.

Только вот …Вы считаете это в порядке вещей, когда каждый раз вручную приходится менять кодировку?…

А GET /cgi-bin/go.pl?q=index;c=koi HTTP/1.1 вообще неправильный запрос. О чем сервер и сообщает ошибкой 400. Не знаю как у вас получилось 200.

http://www.faqs.org/rfcs/rfc2616.html

А вот если добавить к этому строку Host: www.nixp.ru то все будет хорошо. И действительно там везде koi8-r.

Только. В своем 1м сообщении, я показывал запрос, который делает Firefox 1.0 (я выловил его ethtrealом). С точки зрения RFC2616 он правильный. Только вот сервер на него почему-то выдает разные кодировки в заголовках и meta`е. Вы сами это можете проверить.

Я не спорю, что при других запросах все работает замечательно.

p.s. Кстати, может быть кто-нибудь знает как в firefox можно отключить сжатие? Это чтобы можно было отслеживать все общение сервер-клиент в ethereal.

Дмитрий Шурупов

Проблему, кажется, все-таки решил…

Проверяйте еще раз :)

anonymous

Теперь все работает ))