Задать вопрос
@Asd123123123213213

Почему не работают вложенные location?

Добрый вечер! Мне нужно чтобы последние два location применялись только к /test, поэтому решил их сделать вложенными, но по какой-то причине они перестают работать после этого. В чем может быть причина?

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www/html;
    index index.html index.htm index.nginx-debian.html;
    server_name 134.152.12.34;

    location / {
        try_files $uri $uri/ =404;
    }

    location /test {
        proxy_pass http://127.0.0.1:3000/;

        location ~* \.(css|js|png|jpg|jpeg|gif|ico|webp)$ {
            proxy_pass http://127.0.0.1:3000;
        }

        location ~* \.(woff2|ttf|otf|eot|svg)$ {
            proxy_pass http://127.0.0.1:3000;
        }
    }
}
  • Вопрос задан
  • 191 просмотр
Подписаться 1 Простой Комментировать
Решения вопроса 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
А зачем nginx-у смотреть и использовать вложенные location, если у него уже есть "конечная" директива в виде proxy_pass? Вот если бы она тоже была спрятана внутри ещё одного уже универсального location...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
ky0
@ky0 Куратор тега Nginx
Миллиардер, филантроп, патологический лгун
Вы уверены, что понимаете, зачем вам завершающий слэш в верхнем proxy_pass? Потому что если его убрать - и вложенные локейшены не понадобятся.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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