Welcome! Log In Create A New Profile

Advanced

Групповой location, отдает php как файл

November 26, 2012 07:57PM
Здравствуйте. Проблема в следующем.
Имею несколько локейшинов для Zend-овских проектов вида:

location /main {
set $application_env production;
if (!-f $request_filename) {
rewrite ^.*$ /main/index.php last;
}
}

Хочу объеденить их регуляркой в единый локейшен:

location ~* ^\/(main|my|real|gerb)\b.*$ {
set $application_env production;
if (!-f $request_filename) {
rewrite ^\/(.+)\b.*$ /$1/index.php last;
}
}

Т.е. создаю локейшен озаглавленный регулярным выражением без учета регистра, и в него должно попасть все что начинается с example.com/main/ и другие. Он отрабатывает
Идем дальше. Делаю реврайт захватывая часть отвечающую за название локейшена (main, my, real и т.д), это тоже работает, проверил подставив в адрес перенаправления http://www.$1.ru
Пробема же в том что при такой конфигурации когда я пытаюсь зайти по http://example.com/main, к примеру, мне выдается запрос на скачку файла main, который в свою очередь является index.php в директории проекта.
Без группового локейшена (по отдельности когда заданы) все работает.
Локейшен отвечающий за php выглядит у меня так (использую php-fpm):
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm-www.socket;
fastcgi_index index.php;
fastcgi_param PHP_VALUE "session.cookie_domain=.example.com";
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param APPLICATION_ENV $application_env;
include fastcgi_params;
}

В чем проблема может крыться?
Subject Author Posted

Групповой location, отдает php как файл

Gineaser November 26, 2012 07:57PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 176
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready