Re: модуль прокси

Alexander Dolgarev a.dolgarev at gmail.com
Tue Jun 10 18:53:16 MSD 2008


Вообщем для PHPBB3 сработало следующее:

    server {
        listen       80;
        server_name  some.domain.net;

        location / {
            root   html;

            proxy_pass           http://localhost:8000/forum/;
            proxy_set_header     Host                    $host;
            proxy_set_header     X-Real-IP              $remote_addr;
            proxy_redirect       http://some.domain.net/forum/ http://
$host/;

            sub_filter '/forum/' '/';
            sub_filter_types text/plain;
            sub_filter_once off;

        }
...

При этом сам форум стоит на localhost:8000, а в его настройках указан домен
some.domain.net.


2008/6/10 Vladimir Rusinov <vladimir at greenmice.info>:

> 2008/6/10 Alexander Dolgarev <a.dolgarev at gmail.com>:
> > а есть ли какой-нибудь workaround?
> > все же проблема распространенная, кто-нибудь с ней наверняка сталкивался,
> > какие решения находили?
> >
> > 2008/6/10 Vladimir Rusinov <vladimir at greenmice.info>:
> >>
> >> 2008/6/10 Alexander Dolgarev <a.dolgarev at gmail.com>:
> >> > Воспользовался модулем прокси, все просто:
> >> >
> >> >     server {
> >> >         listen       80;
> >> >         server_name  some.domain.net;
> >> >
> >> >         #charset koi8-r;
> >> >
> >> >         access_log  logs/host.access.log  main;
> >> >
> >> >         location / {
> >> >             root   html;
> >> >
> >> >             proxy_pass           http://localhost:8000/forum/;
> >> >
> >> >             sub_filter '/forum' '';
> >> >             sub_filter_types text/plain;
> >> >             sub_filter_once off;
> >> >
> >> >         }
> >> >
> >> >
> >> >         #error_page  404              /404.html;
> >> >
> >> >         # redirect server error pages to the static page /50x.html
> >> >         #
> >> >         error_page  401 402 404  500 502 503 504  /50x.html;
> >> >         location = /50x.html {
> >> >             root   html;
> >> >         }
> >> >
> >> >     }
> >> >
> >> >
> >> >
> >> > Ссылки типа /forum удается заменять налету. Но осталась проблема с
> >> > кукисами,
> >> > а именно сервер посылает заголовок
> >> >
> >> > Set-Cookie: phpbb3_5z63w_sid=b1386871472c3cd91b80cb1a61be1925;
> >> > expires=Wed,
> >> > 10-Jun-2009 12:41:51 GMT; path=/; domain=localhost:8000; HttpOnly
> >> >
> >> > или
> >> >
> >> > Set-Cookie: phpbb3_5z63w_k=; expires=Wed, 10-Jun-2009 12:41:51 GMT;
> >> > path=/forum;
> >> >
> >> > Получаем неверный domain и path.
> >> >
> >> >
> >> > Как с этим бороться?
> >>
> >> Либо править приложение (а phpbb в этом месте кривой, я уже пытался
> >> поправить), либо вешать apache (или что у вас там) на 127.0.0.10:80 и
> >> педедавать Host в заголовке.
>
> Ну либо то что я описал выше, либо fastcgi. Ну или грубый хакинг
> php-шного глобального $_SERVER в начале обработки запроса.
> По-моему других путей нету.
>
> --
> Vladimir Rusinov
> Voronezh, Russia
> UNIX Admin @ Murano Software
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20080610/fed94dc4/attachment.html>


More information about the nginx-ru mailing list