Назад | Перейти на главную страницу

Прокси-сервер Nginx проходит, даже если файл не существует

У меня есть этот фрагмент кода в моей конфигурации nginx

server {
    server_name example.org;
    listen 80;
    listen [::]:80 ;
    root /var/www/;
    index index.html index.htm index.nginx-debian.html index.php;

    location / {
        proxy_pass http://198.25.34.19;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_bind $server_addr;
        proxy_buffering off;
    }
}

Этот код выше работает! Но если файл не существует, перенаправление не работает.

Как я могу это исправить? Я хочу перенаправить, если файл не существует на текущем сервере.

Спасибо.

Если вы хотите обработать 404 ответа в обратном прокси, вам нужно будет их перехватить. Видеть этот документ для подробностей.

Например:

location / {
    proxy_pass http://...;
    ...
    proxy_intercept_errors on;
    error_page 404 =302 /some/other/page;
}