#spring-boot #nginx-location
#пружинный ботинок #nginx-местоположение
Вопрос:
Я установил nginx 1.18.0. Вот часть файла nginx.conf
.
server {
listen 8082;
location /lc/ {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Когда я навещаю http://127.0.0.1:8082/lc , это дает правильный результат, но веб-приложение ответит перенаправлением на /login , поэтому URL-адрес изменится на http://127.0.0.1:8082/login , «lc» отсутствует.То же самое относится и к файлам js / css.
Комментарии:
1. Откуда берется «логин»? Здесь должна быть задействована какая-то другая конфигурация, или, возможно, поведение диктуется тем
http://127.0.0.1:8082/lc
, что на самом деле обслуживает. Можете ли вы показать нам или описать, что возвращает сервер при обращении к этой ссылке? Включена ли у вас какая-либо аутентификация в другой части вашей конфигурации Nginx? Появляется ли слово «login» где-нибудь в конфигурации или содержимом вашего сайта? Я думаю, что это необходимо. — Особенно интересен тот факт, что вы получаете ожидаемый результат, за исключением изменения URL.2. Если не войти в систему, веб-приложение вернет перенаправление на /login . Например, без nginx, если я посещу 127.0.0.1:8080 , сервер ответит перенаправлением на 127.0.0.1:8080/login . В контроллере приложения spring-boot это просто
return "redirect:/login";
.