ПРОЕКТЫ 


  АРХИВ 


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]

Re: виртуальный хостинг основе субдоменов, rewrit ing + PHP (fastCGI)



Здравствуйте, andrey.

Вы писали 2 июля 2006 г., 21:27:05:
> Проблема заключается в том, что в ответ на http://SOME.localhost.ru/ я
> получаю то, что ожидается (/index.php), а в ответ на
> http://SOME.localhost.ru/index.php получаю сообщение "No input file
> specified", т.е. я неверно настроил реврайтинг либо, что более
> вероятно, ошибка в строке fastcgi_param  SCRIPT_FILENAME.

> С этой строкой я долго возился, пытаясь вписывать в нее значения по
> условиям (типа if ($host_name != SOME.localhost.ru)), но ничего не
> вышло.

> Могзи кипят:) Надеюсь на помощь.
>                     rewrite ^(.*)$  $http_host$1;
это неправильно, при запросе например на xxx.localhost.ru на /index.html
такой рерайт даст тебе урл /xxx.localhost.ru/index.html
или около того, хост в рерайт не попадает.

Тебе нужно просто сделать чтобы скрипты брались из папки в зависимости
от домена.
допустим у тебя есть папки сайтов
/var/www/xxx.localhost.ru/htdocs
/var/www/yyy.localhost.ru/htdocs
/var/www/zzz.localhost.ru/htdocs

тогда пишем fastcgi_param  SCRIPT_FILENAME 
/var/www/$http_host/htdocs/$fastcgi_script_name;
и имеем счастье.

ну неплохо бы еще конечно проверок на всякий случай сделать.

если нужно более сложное то вводим свои переменные (регеэкспом матчим
данные и нужное в них пишем) и вперед.






-- 
С уважением,
 Максим                          mailto:mmp@xxxxxx




 




Copyright © Lexa Software, 1996-2009.