Re: php файл не парсится, а отдаётся как есть
Алексей Сундуков
public-mail на alekciy.ru
Пн Дек 12 09:54:03 UTC 2011
При таком конфиге:
server {
listen 8080;
server_name glinka.fm;
root /home/renat/www/glinka;
index index.php index.html;
location / {
try_files $uri $uri/ @backend;
}
location ~ \.php$ {
try_files $uri @backend;
fastcgi_pass unix:путь_до_сокета;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME
/home/renat/www/glinka$fastcgi_script_name;
}
location @backend {
fastcgi_pass unix:путь_до_сокета;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME /home/renat/www/glinka/index.php;
fastcgi_param SCRIPT_NAME index.php;
fastcgi_param QUERY_STRING q=$uri&$args;
fastcgi_param REQUEST_URI q=$uri&$args;
fastcgi_param DOCUMENT_ROOT /home/renat/www/glinka;
}
}
Если PHP файл существует, то будет выполнен как PHP, а не отдан как
статика. Если файла нет, то запрос будет отдан в
/home/renat/www/glinka/index.php который будет обрабатывается как PHP
файл. Возможный минус - запрос будет отдан для любого несуществующего
файла (jpg, png и прочие подобные статические), т.е. PHP бэкэнд будет
каждый раз дергаться и должен будет самостоятельно отдать nginx 404
статус (если необходимо). Хотя лично для меня это плюс ибо позволяет
на уровне приложения получать все запросы и в зависимости по ситуации
возвращать результат. К примеру, динамически создать картинку.
12 декабря 2011 г. 13:28 пользователь mennanov <nginx-forum at nginx.us> написал:
> А как его передать в php-fpm? Или какой
> тогда location сделать..?
>
> Posted at Nginx Forum: http://forum.nginx.org/read.php?21,219884,219910#msg-219910
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
Подробная информация о списке рассылки nginx-ru