Re[2]: Кастомная 404 для определенных локейшенов.
K K
nnex на mail.ru
Ср Окт 12 02:00:29 UTC 2016
Првет
Скоре всего тебе надо возвращать от бекэнда 404ую с 200ым ответом, а уже nginx'ом переписывать код ответа на 404
--
k k вторник, 11 октября 2016г., 21:43 +05:00 от Sargas sargaskn на gmail.com :
>Возможно у кого-то есть какие-то мысли как это реализовать?
>Буду благодарен.
>
>6 октября 2016 г., 17:45 пользователь Sargas < sargaskn на gmail.com > написал:
>>Здравствуйте.
>>
>>Подскажите, пожалуйста, как решить следующую задачу.
>>Нужно для админки /admin сделать обработку 404 ошибок скриптом app.php, а для остальных локейшенов чтобы отдавался файл 404.html
>>
>>server {
>> listen 127.0.0.1:80 ;
>> server_name example.com ;
>>
>> error_log /vhosts/ example.com/logs/nginx.error.log ;
>> access_log /vhosts/ example.com/logs/nginx.main.log main;
>>
>> location ~ /\. { deny all; }
>> index app.php;
>> root /vhosts/ example.com/www ;
>> error_page 404 /404.html;
>>
>>
>> location / {
>> try_files $uri /app.php$is_args$args;
>> }
>>
>>
>> location ~ ^/app\.php {
>> include fastcgi_params;
>> fastcgi_param DOCUMENT_ROOT $realpath_root;
>> fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
>> fastcgi_pass phpfpm;
>> fastcgi_index app.php;
>> fastcgi_connect_timeout 1;
>> fastcgi_intercept_errors on;
>> internal;
>> }
>>
>>
>> location ~ \.php$ {
>> return 404;
>> }
>>
>>
>> location /admin {
>> include conf.d/adminips.conf;
>> try_files $uri /app.php$is_args$args;
>> }
>>
>>
>> location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|bin|rar|bz2|woff|doc|xls|exe|pdf|ppt|tar|wav|bmp|rtf|swf|js|html|htm|flv)$ {
>> expires max;
>> }
>>
>>}
>>
>>
>>Пробовал делать именованный локейшен и отправлять в него 404, но все равно отдается 404.html
>> location /admin {
>> include conf.d/adminips.conf;
>> try_files $uri /app.php$is_args$args;
>> error_page 404 = @err404;
>> }
>>
>> location @err404 {
>> include fastcgi_params;
>> fastcgi_param DOCUMENT_ROOT $realpath_root;
>> fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
>> fastcgi_pass phpfpm;
>> fastcgi_index app.php;
>> fastcgi_connect_timeout 1;
>> fastcgi_intercept_errors on;
>> }
>>
>
>_______________________________________________
>nginx-ru mailing list
>nginx-ru на nginx.org
>http://mailman.nginx.org/mailman/listinfo/nginx-ru
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20161012/eab4ca7f/attachment.html>
Подробная информация о списке рассылки nginx-ru