информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Страшный баг в WindowsSpanning Tree Protocol: недокументированное применение
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / web building
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
может быть веб сервер автоматически перекодирует в windows-1250 ? 07.11.03 21:37  Число просмотров: 2740
Автор: spy Статус: Незарегистрированный пользователь
<"чистая" ссылка>
вообще интересно, когда сервер автоматически перекодирует в другую кодировку, разве HTML не изменится и разве броузер не отвечает за интерпретацию полученого им с сервера HTML на компе "клиента"?

может я не прав, но я понимаю так:
если notepad'ом открыть HTML - там всё по русски, значит броузер имеет текст в нужной кодировке (w1251). так же, в хэдере, там указано, что это именно та кодировка (w1251).и насколько я понимаю, когда броузер уже получил HTML, сервер на интерпретацию этого кода уже не влияет - и всё должно быть путём.... только этого не происходит, и я явно чего-то упускаю или не знаю. поэтому в полной потере :-/
<web building>
странная тема с кодировками 07.11.03 18:38  
Автор: spy Статус: Незарегистрированный пользователь
<"чистая" ссылка>
на http://www.ruskodnes.sk/ru/ сделали секцию на русском, а она показывает всё центрально европейскими символами. Если смотреть HTML - там прописана "charset=windows-1251" , внутри плавающих фреймов с другой кодировкой вроде нет.

Если в IE сохранить страницу как "только HTML", то локально на компе тот же HTML что и при её просмотре в броузере, и страница выходит на русском. А если сохранить страницу как "Web Page, complete", то html файл выглядит немного по другому, и в броузере выходит как charset=windows-1250.

в чём может быть проблема? направте меня в нужном направлении!
странная тема с кодировками 15.11.03 00:48  
Автор: PaulGor Статус: Незарегистрированный пользователь
Отредактировано 15.11.03 00:48  Количество правок: 1
<"чистая" ссылка>
> на http://www.ruskodnes.sk/ru/ сделали секцию на русском, а
> она показывает всё центрально европейскими символами.

Сервер, конечно, ни в какую windows-1250 кодировку не перекодирует, a, как здесь уже предполагали, шлёт HTTP Header с указанием кодировки
"Central European, windows-1250"

Это можно посмотреть на сайте просмотра HTTP Header'ов:
http://www.delorie.com/web/headers.html

Что ему (хозяину сервера) сказать? Сказать, что бы не заполнялось поле кодировки в HTTP Header'е - тогда META...charset= в самом .html будет срабатывать...
Вот мой Интернет Провайдер - CompuServe - не заполняет это поле, и поэтому я у себя могу страницы с любой кодировкой создавать...
может быть веб сервер автоматически перекодирует в windows-1250 ? 07.11.03 19:11  
Автор: tdes <jin> Статус: Member
<"чистая" ссылка>
может быть веб сервер автоматически перекодирует в windows-1250 ? 07.11.03 21:37  
Автор: spy Статус: Незарегистрированный пользователь
<"чистая" ссылка>
вообще интересно, когда сервер автоматически перекодирует в другую кодировку, разве HTML не изменится и разве броузер не отвечает за интерпретацию полученого им с сервера HTML на компе "клиента"?

может я не прав, но я понимаю так:
если notepad'ом открыть HTML - там всё по русски, значит броузер имеет текст в нужной кодировке (w1251). так же, в хэдере, там указано, что это именно та кодировка (w1251).и насколько я понимаю, когда броузер уже получил HTML, сервер на интерпретацию этого кода уже не влияет - и всё должно быть путём.... только этого не происходит, и я явно чего-то упускаю или не знаю. поэтому в полной потере :-/
Некоторые соображения 07.11.03 22:23  
Автор: Ktirf <Æ Rusakov> Статус: Elderman
Отредактировано 07.11.03 22:23  Количество правок: 1
<"чистая" ссылка>
Мест, указывающих кодировку документа, два: HTTP-заголовок Content-Type, передаваемый сервером, и meta-тег в HTML-документе. Первый обычно фиксируется хостером/веб-мастером, второй - автором странички. Задача браузера - в зависимости от вышеуказанных значений переключиться в нужную кодировку (если, конечно, в браузере включено автоопределение кодировки). Честно говоря, я был уверен, что браузеры предпочитают meta-тег HTTP-заголовку, но похоже, это не так (только что посмотрел на Мозилле и Опере).
Резюме состоит в том, чтобы попросить человека, имеющего доступ к конфигам того Апача, который у них там работает, поправить конфиги так, чтобы сервер хотя бы (!) следил за заголовком Accept-Charset, отправляемым браузером на сервер. Ну или как вариант просто не выставлял бы Content-Type в своих HTTP-заголовках, а писал бы его в тег внутри HTML-документов.
Некоторые соображения. Уточнение. 07.11.03 22:47  
Автор: Eugene Статус: Незарегистрированный пользователь
<"чистая" ссылка>
ничего нового не скажу, только обобщу

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

CharsetDefault windows-1251
CharsetSourceEnc windows-1251

не много браузеров продолжают сопротивляться.

кодировка и правда выдается в контент-тайпе в параметре charset

программно это можно реализовать так
print $query->header( -charset => $wdwl::default_charset );

между прочим, как раз опере доверяю в этом вопросе меньше нежели остальным.
а как узнать, какие хедеры посылает броузер и какие получает от сервера ? 07.11.03 22:40  
Автор: tdes <jin> Статус: Member
<"чистая" ссылка>
Про telnet тут уже более-менее завелся тред, но вообще-то 08.11.03 01:28  
Автор: Ktirf <Æ Rusakov> Статус: Elderman
<"чистая" ссылка>
Если под рукой есть Мозилла, то можно просто посмотреть Page Info -> Headers.
inside 07.11.03 23:03  
Автор: Eugene Статус: Незарегистрированный пользователь
<"чистая" ссылка>
все, что посылает сервер браузеру можешь получить, послав из рядового телнета примитивный get запрос

bash-2.05b# telnet bl.com.ua 80
Trying 195.64.225.21...
Connected to bl.com.ua.
Escape character is '^]'.
GET / HTTP1.1

HTTP/1.1 200 OK
Date: Fri, 07 Nov 2003 19:57:31 GMT
Server: Apache/1.3.19 (Unix) mod_perl/1.26 PHP/4.1.2 rus/PL30.4
Content-Length: 371
Last-Modified: Mon, 01 Oct 2001 08:24:56 GMT
ETag: "10f581-173-3bb82858-koi8-r"
Connection: close
Content-Type: text/html; charset=koi8-r
Expires: Thu, 01 Jan 1970 00:00:01 GMT

<!--## (C) 2000, ElVisti Information Center, I.S.P. //ssr@visti.net ##-->
<HTML>
<META HTTP-EQUIV="pragma" CONTENT="no-cahce">
<TITLE>[ Welcome to Web-hosting place @ElVisti ]</TITLE>
<LINK rel="stylesheet" href="css" type="text/css" title="Basic Style">

<BODY bgColor=#307080>

<FONT class=td>
<a href=http://www.visti.net>Visti.net</a> hosting place


</BODY></HTML>
Connection closed by foreign host.



а для получения всего, что передает браузер - из скрипта распечатай хеш $ENV

#!/usr/bin/perl

use CGI;

print CGI->header;

foreach $i (%ENV) {
print $i.":".$ENV{$i}."<br>";
}


так, или просто

print_r($_SERVER) в пхп
inside 07.11.03 23:38  
Автор: tdes <jin> Статус: Member
<"чистая" ссылка>
когда я из рядового виндусовского telnet'a соединяюсь на 80 порт, у меня появляется черный экран, и когда я там пишу (при этом не видно что)
GET / HTTP1.1я получаю только html код, без хедеров
inside 08.11.03 00:17  
Автор: Eugene Статус: Незарегистрированный пользователь
<"чистая" ссылка>
для начала включи в настройках эхо. далее - привожу пример для bugtraq.ru


bash-2.05b# telnet
telnet> open bugtraq.ru 80
Trying 195.209.36.90...
Connected to bugtraq.ru.
Escape character is '^]'.
GET / HTTP1.1
HTTP/1.1 400 Bad Request
Date: Fri, 07 Nov 2003 21:09:04 GMT
Server: Apache/1.3.27 (Unix) mod_perl/1.27
Connection: close
Content-Type: text/html; charset=iso-8859-1



400, видимо, из-за отсутствия "Host:" в запросе. это сейчас и не важно. заголовки есть.

телнет хоть и не виндоузятний, но вполне рядовой.
по правде говоря, не знаю где в этом telnet'e включать эхо 08.11.03 00:50  
Автор: tdes <jin> Статус: Member
<"чистая" ссылка>
Жмешь Ctrl-] потом набираешь "set ?" 08.11.03 01:00  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
не могу ни к одному серваку подключится, за пределами лана 08.11.03 02:09  
Автор: tdes <jin> Статус: Member
<"чистая" ссылка>
Connection to host lost
фаервол может не давать ?
inside 08.11.03 18:28  
Автор: Eugene Статус: Незарегистрированный пользователь
<"чистая" ссылка>
возможно, или - обращайся к прокси в локальной сети. только тому нужен еще и параметр Host.
может быть веб сервер автоматически перекодирует в windows-1250 ? 07.11.03 21:16  
Автор: spy Статус: Незарегистрированный пользователь
<"чистая" ссылка>
может. а как с этим бороться?
вэбмастер того сайта тоже в непонятках что происходит.
может быть веб сервер автоматически перекодирует в windows-1250 ? 08.11.03 11:45  
Автор: archy Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> может. а как с этим бороться?
> вэбмастер того сайта тоже в непонятках что происходит.
Добавить в кофиг апача AddDefaultCharset windows-1251
может быть веб сервер автоматически перекодирует в windows-1250 ? 15.11.03 00:52  
Автор: PaulGor Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> > может. а как с этим бороться?
> > вэбмастер того сайта тоже в непонятках что происходит.
> Добавить в кофиг апача AddDefaultCharset windows-1251

Ну да, конечно! :) Ты видел адрес? Там на конце .sk стоит, видел?
Если сделать так, как ты советуешь, то русская страница будет хорошо работать, а вот все остальные, их национальные - перестанут :)

Нет, надо, чтобы вэбмастер сделал так, чтобы поле кодировки -
Charset - вообще не заполнялось в HTTP Header'e.
Если бы мой провайдер сделал, как ты советуешь, то я бы не смог ничего, кроме windows-1251 создавать, а у меня ведь и UTF-8 есть:
http://ourworld.compuserve.com/homepages/PaulGor/utf8euro.htm
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach