<div dir="ltr"><div dir="ltr"><div dir="ltr">привет!<div><br></div><div>берем nginx-1.23.2</div><div>задача - проксировать на fastcgi только реально существующие на файловой системе файлы (чтобы всякие сканы типа /xmlrpc.php не отправлялись бы на fastcgi).</div><div><br></div><div><br></div><div>классическое решение (работает)</div><div><br></div><div><div>        location / {</div><div>                try_files $uri =404;</div><div>                fastcgi_pass unix:/run/php/php7.4-fpm.sock;</div><div><br></div><div>                fastcgi_index  index.php;</div><div>                fastcgi_param  SCRIPT_FILENAME  $realpath_root$fastcgi_script_name;</div><div>                fastcgi_intercept_errors on;</div><div><br></div><div>                include fastcgi_params;</div><div>        }</div></div><div><br></div><div><br></div><div>однако try_files перестает решать задачу, если мы добавляем if (чуть упрощенный конфиг, просто для иллюстрации) - даже несуществующие файлы отправляются на fastcgi</div><div><br></div><div><div>        location / {</div><div>                try_files $uri =404;</div><div>                fastcgi_pass unix:/run/php/php7.4-fpm.sock;</div><div><br></div><div>                fastcgi_index  index.php;</div><div>                fastcgi_param  SCRIPT_FILENAME  $realpath_root$fastcgi_script_name;</div><div>                fastcgi_intercept_errors on;</div><div><br></div><div>                include fastcgi_params;</div><div><br></div><div>               set $cors "true";</div><div><br></div><div>               if ($cors = "true") {</div><div>                       add_header 'Access-Control-Allow-Origin' "$http_origin";</div><div>               }</div><div>        }</div></div><div><br></div><div><br></div><div><br></div><div>можно ли как-то во втором случае вернуть прежнее поведение try_files ?</div><div><br></div><div>Илья Шипицин</div><div><br></div><div><br></div></div></div></div>