Помогите с реврайтом

Kirill A. Korinskiy catap+nginx at catap.ru
Mon May 25 02:19:33 MSD 2009


At Sun, 24 May 2009 03:07:43 +0400,
Роман <n.g.i.n.x.e.r at gmail.com> wrote:
> 
> блин нечаянно enter нажал )
> 
> задача такая стоит форум с кучей разделов
> на форум направлено несколько доменов
> надо раскидать домены по разделам
> чтобы заходя по домену народ видел свою ветку как отдельный форум
> 
> попробовал сделать так
> 
> if ($host = "www.site1.ru") {
> 	rewrite ^(.*)$ /forumdisplay.php?f=1 break;
> }
> 
> if ($host = "www.site2.ru") {
> 	rewrite ^(.*)$ /forumdisplay.php?f=2 break;
> }
> 
> перенаправляет но файлы стилей чепляются я так понимаю тоже через путь
> /forumdisplay.php?f=..
> 
> подскажите правильное правило
> 

Я бы делал так. Предполагается что ip 1.2.3.4 ты можешь полностью
отдать под эти форумы.

содержимое map можно вынести в отдельный файл и не сочинять скрипты
для генерации кучи сайтов :)

    map  $http_host  $forum  {
        hostnames;

        default          index.php;

        site1.ru         forumdisplay.php?f=1;
        *.site1.ru       forumdisplay.php?f=1;
        site2.ru         forumdisplay.php?f=1;
        *.site2.ru       forumdisplay.php?f=1;
	porno.*          forumdisplay.php?f=66; 
    }

    server {
        listen  1.2.3.4:80 default;

        rewrite      ^      http://forum.site.com/$forum;
    }

    server {
        listen  1.2.3.4:80;
        server_name  forum.site.com

	location / {
            proxy_pass ...;
        }
    }

-- 
wbr, Kirill





More information about the nginx-ru mailing list