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

Максим Полозов mmp at rdw.ru
Mon Jul 3 11:08:49 MSD 2006


Здравствуйте, 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 at rdw.ru






More information about the nginx-ru mailing list