Welcome! Log In Create A New Profile

Advanced

условный CORS, if, try_files и fastcgi

Илья Шипицин
December 03, 2022 01:50AM
привет!

берем nginx-1.23.2
задача - проксировать на fastcgi только реально существующие на файловой
системе файлы (чтобы всякие сканы типа /xmlrpc.php не отправлялись бы на
fastcgi).


классическое решение (работает)

location / {
try_files $uri =404;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;

fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
$realpath_root$fastcgi_script_name;
fastcgi_intercept_errors on;

include fastcgi_params;
}


однако try_files перестает решать задачу, если мы добавляем if (чуть
упрощенный конфиг, просто для иллюстрации) - даже несуществующие файлы
отправляются на fastcgi

location / {
try_files $uri =404;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;

fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
$realpath_root$fastcgi_script_name;
fastcgi_intercept_errors on;

include fastcgi_params;

set $cors "true";

if ($cors = "true") {
add_header 'Access-Control-Allow-Origin'
"$http_origin";
}
}



можно ли как-то во втором случае вернуть прежнее поведение try_files ?

Илья Шипицин
_______________________________________________
nginx-ru mailing list -- nginx-ru@nginx.org
To unsubscribe send an email to nginx-ru-leave@nginx.org
Subject Author Posted

условный CORS, if, try_files и fastcgi

Илья Шипицин December 03, 2022 01:50AM

Re: условный CORS, if, try_files и fastcgi

Maxim K December 03, 2022 06:00AM

Re: условный CORS, if, try_files и fastcgi

Илья Шипицин December 03, 2022 09:12AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 278
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