SF> Тут говорили недавно о редиректе, и у меня в связи с этим вопрос:
SF>
SF> Есть сервер с кодировками by-port. Хотелось на нем сделать вот что:
SF> чтобы все, кто приходят на http://server/, перебрасывались на
SF> http://server:port/, в соответствии с User-Agent, в случае, если нету
SF> Accept-Charset. Для чего - для того, что, как я понял, запросы
SF> на http://server/ и все, что идет через ByAgent, не кешируется ( и не
SF> может, во избежание), что обидно. Тогда как запрос по порту, отведенному
SF> определенной кодировке, кешируется. Accept трогать не хочу, т.к. воля
SF> клиента - закон :) Вот мне и подумалось сделать такой редирект. Хотя бы
SF> для главной страницы - большинство там через нее ходит. Пробовал через
SF> Rewrite. Сначала что-то типа:
SF>
SF> RewriteCond %{HTTP:Accept-charset} !.+
SF> RewriteCond %{SERVER_PORT} 80
SF> RewriteCond %{HTTP_USER_AGENT} X11
SF> RewriteRule ^index.html$ http://%{SERVER_NAME}:8083/index.html [R=301]
SF>
SF> Выяснилось, что SERVER_PORT всегда 80. Заменил на:
SF> RewriteCond %{HTTP_HOST} !:
SF> но ведь Host только в 1.1 обязателен... И вообще как-то некрасиво
SF> выглядит...
SF>
Проблема в том, что mod_rewrite отрабытывает до того, как mod_charset определит:
какая-же все-таки нужна кодировка в конце-то концов ?
SF> В общем, не нашел пока варианта, который бы меня устроил.
SF> Есть ли у кого-то работающий setup такого типа или умный совет?
http://www.sch57.msk.ru/ похоже на то, что нужно ?
SF> Бросить ByPort и перейти на prefix может, наверно, облегчить задачу,
SF> но мне с портом работать удобнее...
Проблему обработки mod_rewrite до mod_charset этим не решить :((
SF> В общем, буду сильно благодарен за советы.
Видимо проще всего поставить .cgi-скрипт (или PHP-скрипт или perl-скрипт через
mod_perl если что-нибудь из этого вкомпилировано) на входе: ну сколько, в самом
деле, человек заходит на страницу в день ? Ведь это же не AltaVista в конце
концов...
При этом даже и человек с Accept Charset будет куда-нибудь перекинут, но в
любом случае его воля будет *правильно* учтена.
"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.