add_after_body, странное поведение

dwl dewil at dewil.ru
Fri Jul 13 18:07:26 MSD 2007


Всем привет.
Помогите понять причину странного поведения директивы add_after_body.
Цель: Необходимо длинную подпапку с сайта2 показать как корень сайта1.
И если это текстовый документ (не картинка), то снизу вывести еще текст 
(/help.html)
Пишу конфиг:

    server {
        listen          1.1.1.1:80;
        server_name     site1.com;
        root            /www;

        access_log      /log/access_log;
        error_log       /log/error_log error;

        location = / {
            proxy_pass          http://site2.com/path1/start.html
            proxy_set_header    Host    site2.com;
            add_after_body      /help.html;
        }
        location / {
            rewrite             ^/(.+)$ /path1/$1 break;
            proxy_pass          http://site2.com;
            proxy_set_header    Host    site2.com;
            add_after_body      /help.html;
        }
        location ~* \.(png|gif|jpg|jpeg|css)$ {
            rewrite             ^/(.+)$ /path1/$1 break;
            proxy_pass          http://site2.com;
            proxy_set_header    Host    site2.com;
        }
        location = /help.html {
        }
        location = /favicon.ico {
        }
    }

В doc_root сайта1 лежат только 2 файла help.html & favicon.ico, 
остальное проксируется.

В Opera работает. Так же все видно, если скачать страницу с помощью 
lynx, wget, fetch.
А вот IE & FF не показывают тело help.hml, т.е. пусто, видно только 
конец исходной страницы (</html> ) и дальше нечего.
Почему такое поведение? С чем это может быть связано?

И почему nginx не пишет в лог запрос к файлу /help.html, даже в том 
случае, когда он его отдал (случай с Opera).

--
dwl






More information about the nginx-ru mailing list