Здравствуйте, коллеги.
Пытаюсь сделать на 0.5.35 виртуальный хост с такой логикой:
- если бекенд вернул полезное содержимое, проксировать его;
- если бекенд вернул 404-ю ошибку, выдавать вместо неё локальное содержимое
в зависимости от URL.
Результат - "подвисание" клиентского запроса в случае 404 ошибки.
Подскажите, пожалуйста, балбесу, что не так?
server {
listen 80;
server_name proxytest;
access_log "/var/log/nginx/proxytest_log";
error_log "/var/log/nginx/proxytest_error";
location / {
proxy_intercept_errors on;
proxy_pass http://backend;
error_page 404 = @nopic;
}
location @nopic {
root /home/proxytest;
rewrite ^/test3(.*)$ /3.jpg;
rewrite ^/test2(.*)$ /2.jpg;
rewrite ^/test1(.*)$ /1.jpg;
return 200;
}
}
Спасибо.
--
Igor Shergin