nginx: перенаправить в файл .php с try_files, если требуется .php файл не найден

Используя nginx, я хотел бы перенаправить на /redirect.php с помощью try_files, если требуемый файл .php не найден, это правильный способ сделать это :

location ~ \.php$ {
...
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        try_files $uri /redirect.php =404;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
}

Однако, похоже, это не работает.

0
задан 15 March 2018 в 11:24
1 ответ

location \ .php $ означает, что каждый запрос, заканчивающийся расширением .php , будет обрабатываться этим блоком.

Ваши try_files ] находится не в том месте. Вам нужно либо поместить его в существующий блок location / , либо в блок сервера .

1
ответ дан 4 December 2019 в 16:00

Теги

Похожие вопросы