ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

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

nginx: sub_filter странная работа


  • To: <nginx-ru@xxxxxxxxx>
  • Subject: nginx: sub_filter странная работа
  • From: "Vladimir Larionov" <incognito@xxxxxxxxxx>
  • Date: Mon, 29 Oct 2007 12:58:49 +0300
  • Domainkey-signature: a=rsa-sha1; s=1024; d=opencom.ru; c=nofws; q=dns; h=received:received:from:to:subject:date:message-id: mime-version:content-type:content-transfer-encoding:x-mailer:x-mimeole: in-reply-to:thread-index:x-virus-scanned:x-virus-status; b=RevqclipYQamONxuV9JMU6jhQOYS5CXF1SnpUkBWDFEZSbjpO7I+ddpXpRNev72+7 xspH3n0ldbq4SNceEsbDntVXSE2f52CmOehpNpRtE4eixIRyFvhoaYHp+YIQW62q4n7 oJxxUkYVYqZuHt+63Zlr3nmvwkwqLb0YNEG62Rc=
  • In-reply-to: <4725A250.2070605@xxxxxxx>
  • Thread-index: AcgaD2+lk6CznaTjQcueXOPjsWWEhAAAp4TQ

        Добрый день. 
Есть конфиг nginx'а: 
server { 
listen *:80; 
server_name test1.tellme.ru; 
sub_filter forum.sysadmins.ru test1.tellme.ru; 
sub_filter_once off; 
location / { 
proxy_set_header X-Forwarded-For $remote_addr; 
proxy_pass http://forum.sysadmins.ru; 
proxy_redirect off; 
        } 
} 
Замечательно работает, переписывает все "forum.sysadmins.ru" на
"test1.tellme.ru" в теле ответа. Но по какой-то причине не работает, если на
бэкенде стоит, к примеру, Invision Power Board. 
Для примера: 
test1.tellme.ru - проксирует запросы на forum.sysadmins.ru, все ссылки здесь
относительные, кроме верхнего меню (Форум, Регистрация и т. д.) - там ссылки
абсолютные. sub_filter отрабатывает отлично 
test2.tellme.ru - проксирует запросы на форум forum.qwerty.ru. Конфиг
идентичный, только sysadmins заменено на qwerty. Там мы можем наблюдать иную
картину - модуль срабатывает только на нижней надписи (текстовая версия),
остальное тело отдаваемой клиенту странички остаётся нетронутым. 
Видно, что часть страницы берется непосредственно с forum.qwerty.ru 

1193582857.873     22 emma.domain TCP_CLIENT_REFRESH_MISS/304 281 GET
http://test2.tellme.ru/style_images/qwerty/loading_anim.gif -
DIRECT/213.85.31.238 - 
1193582857.874      6 emma.domain TCP_CLIENT_REFRESH_MISS/304 281 GET
http://test2.tellme.ru/style_images/qwerty/close.png -DIRECT/213.85.31.238 -

1193582857.875      6 emma.domain TCP_CLIENT_REFRESH_MISS/304 281 GET
http://test2.tellme.ru/jscripts/ipb_globalmess.js - DIRECT/213.85.31.238 - 
1193582857.910      3 emma.domain TCP_CLIENT_REFRESH_MISS/304 294 GET
http://forum.qwerty.ru/style_images/qwerty/css_pp_header.gif -
DIRECT/87.240.2.162 - 
1193582857.912      5 emma.domain TCP_CLIENT_REFRESH_MISS/304 294 GET
http://forum.qwerty.ru/uploads/1192005259/gallery_31244_29_313.gif -
DIRECT/87.240.2.162 - 
1193582857.914     13 emma.domain TCP_CLIENT_REFRESH_MISS/304 280 GET
http://test2.tellme.ru/style_images/qwerty/exp_minus.gif -
DIRECT/213.85.31.238 - 
1193582857.915      6 emma.domain TCP_CLIENT_REFRESH_MISS/404 441 GET
http://forum.qwerty.ru/uploads/1169206590/gallery_7855_29_2700.gif -
DIRECT/87.240.2.162 image/gif 
1193582857.917      6 emma.domain TCP_CLIENT_REFRESH_MISS/304 280 GET
http://test2.tellme.ru/style_images/qwerty/nav.gif - DIRECT/213.85.31.238 - 
1193582857.919      2 emma.domain TCP_CLIENT_REFRESH_MISS/304 294 GET
http://forum.qwerty.ru/jscripts/cbc_mouseevent.js - DIRECT/87.240.2.162 - 
1193582857.921      6 emma.domain TCP_CLIENT_REFRESH_MISS/304 280 GET
http://test2.tellme.ru/style_images/qwerty/exp_plus.gif -
DIRECT/213.85.31.238 - 

Основной вопрос: почему так происходит? 
З. Ы. Естественно, Nginx собран --with-http_sub_module. 
З. Ы. Ы. Испытывались nginx/0.6.15 ("devel) и 0.5.32
--
WBR, LVP-RIPE


 




Copyright © Lexa Software, 1996-2009.