У меня проблема с обработкой маршрутизации в Nginx.
server {
listen 80;
listen [::]:80;
server_name my_domain;
root /var/www/ep;
index index.html;
error_page 403 404 /my403.html;
location /images/ {
try_files $uri @not_found;
}
location @not_found {
root /var/www/ep/not_found;
try_files NON_EXISTENT_1 /not_found.jpg;
}
}
Для вышеуказанного конфига, когда я захожу на http://my_domain/images/xyz.png или http://my_domain/images/ я ожидаю, что произойдет директива местоположения @not_found
возвращающая изображение из /var/www/ep/not_found/not_found.jpg
(он существует), но каким-то образом /var/www/ep/not_found.jpg
путь (он не существует). Это приводит к отображению файла /my403.html
.
Я хочу использовать именованный подход к местоположению (@not_found
).
Может ли кто-нибудь объяснить, что здесь происходит?
Почему /var/www/ep/not_found/not_found.jpg
не обслуживается?