Russian Apache Switch to English
Switch to Russian koi8-r
windows=1251
cp-866
iso8859-5
Russian Apache Как это работает Рекоммендации Где взять Как установить Как настроить Статус и поддержка
Краткий обзор FAQ Список рассылки Благодарности Поиск по серверу Powered by Russian Apache
Russian Apache mailing list archive (apache-rus@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Наш ответ керзону про charset= в cgi



Hi!

Это ответ, на имевшее место быть вчера-позавчера обсуждение.
Начну с конца.
1) Last-Modified/Expires на CGI-скрипты не ставит сам apache. Это совершенно 
аналогично (для кэшей) тому, что поставить Last-modified: now,
Expires: 1/1/1970. Во-всяком случае, это их (Apache-team) "патентованый" метод 
защиты от кэширования для CGI/SSI. На "основном" (80 - в примерах) порту
эти заголовки потом "насильно" ставятся кодом, обрабатывающим результаты работы 
mod_charset.

Это поведение немного 'unclear', но вполне работоспособно. Править чужие модули 
на предмет насильной выдачи Last-mod/Expires я не буду, а bug-report (точнее, 
сообщение, что лучше бы явно ставить Expires) отошлю в Apache только после 
выхода 1.3.0 (потому как очень не хочу хоть немного тормозить этот выход).

2) charset= в выдаче cgi-скриптов.
В _самом_ скрипте выдавать charset= не нужно, он будет поставлен в момент 
выдачи запроса пользователю. Работать это будет так в двух случаях:
1) Выключена CharsetMatchLanguage (по-умолчанию включена для совместимости)
2) если используется Language Negotiation (Accept-Language и так далее),
то вместо ScriptAlias /cgi-bin/ /path/to/cgi/ нужно использовать конструкцию
Alias /cgi-bin /path/to/cgi/
<Directory /path/to/cgi>
SetHandler cgi-script
Options MultiViews
</Directory>

Связано это с тем, что ScriptAlias не работает с MultiViews - это бага 
Apache-1.2.x

Резюме.
1) У Николая включен MultiViews (или CharsetMatchLanguage Off) и все хорошо
2) У Андрея все наоборот :)
3) в PL20.8 или какой там будет следующий будет проверка на "вторую" установку
charset=, но срочной необходимости в этом нет - все и так достаточно корректно.

С уважением,Alex Tutubalin

--- GoldED 2.42.G1114+








Спонсоры сайта:

[ Russian Apache ] [ Как это работает ] [ Рекомендации ] [ Где взять ] [ Как установить ] [ Как настроить ] [ Статус и поддержка ] [ Краткий обзор ] [ FAQ ] [ Список рассылки ] [ Благодарности ] [ Поиск по серверу ] [ Powered by Russian Apache ] [ Apache-talk archive ]

"Russian Apache" includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/) See Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C) 1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.