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;
    }
}

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

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

Спасибо.

1
задан 22 June 2019 в 10:18
1 ответ

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

Например:

location / {
    proxy_pass http://...;
    ...
    proxy_intercept_errors on;
    error_page 404 =302 /some/other/page;
}
0
ответ дан 4 December 2019 в 02:52

Теги

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