ПРОЕКТЫ 


  АРХИВ 


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]

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



Привет,

Я с ним (nginx) первый раз столкнулся. Замучился уже с настройкой rewrite+php 
(fastcgi). Могли бы показать? 
Мне надо сдлелать "разброску" по поддоменам (это я уже решил) так, чтоб это 
нормально работало с PHP (это и есть проблема).

Проблема заключается в том, что в ответ на 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)), но ничего не
вышло.

Могзи кипят:) Надеюсь на помощь.

Вот мой конфиг.

    server {

        listen       127.0.0.1:80;
        server_name  localhost.ru  *.localhost.ru


        location / {
                root   /home/www/data/public_html/;
                index  index.php index.html index.htm;


                # перенаправление YYY.XXX.localhost.ru на XXX.localhost.ru
                if ($http_host ~ ^.+\.[^\.]+\.localhost\.ru.*$) {
                    rewrite ^(.*)$  $http_host$1;
                    rewrite ^.*\.([^\.]+)\.localhost\.ru(.*)$ 
http://$1.localhost.ru$2 permanent;
                    break;
                }


                # отображение XXX.localhost.ru в пользовательские папки XXX
                if ($http_host ~ ^.*\.localhost\.ru.*$) {
                    rewrite ^(.*)$  $http_host$1;
                    rewrite ^(.+)\.localhost\.ru(.*)$ /ub$2 break;
                    break;
                }


        }

        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  
/home/www/data/public_html$fastcgi_script_name;
            fastcgi_param  QUERY_STRING     $query_string;
            fastcgi_param  REQUEST_METHOD   $request_method;
            fastcgi_param  CONTENT_TYPE     $content_type;
            fastcgi_param  CONTENT_LENGTH   $content_length;
        }


    }





 




Copyright © Lexa Software, 1996-2009.