@bruges

Как заменить URL в браузере в связке NGINX+TOMCAT?

nginx проксирует входящие соединения на локальный tomcat с развернутым в нем приложением следующим образом:

upstream tomcat {
    server 127.0.0.1:8080 fail_timeout=0;
}

server {
    server_name domain.com;
    location / {
        proxy_pass http://tomcat/app/;
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real-IP $remote_addr;
        rewrite ^/app/(.*)$ /$1 last;
    }

    location /app {
        rewrite ^/app(.*)$ $1 redirect;
    }
}


Последняя секция location нужна, чтобы сделать из domain.com/app/чтото просто domain.com/чтото (по этому ману). Всё прекрасно работает, НО приложение (развернутое в томкете) использует свои внутренние редиректы и всегда возвращает дополнительно какой-то свой url в виде того самого что-то чтото. Он всегда один и тот-же и в нем есть символ #. Я всегда получаю в итоге такие url:

1. domain.com/users/index.html#/login
2. domain.com/users/index.html#/settings
3. domain.com/users/index.html#/logout
итд

Как облагородить URL, убрав в браузере клиента подстроку /users/index.html#, чтобы было просто:

1. domain.com
2. domain.com/settings
3. domain.com/logout
итд

При этом я не знаю какие кроме login/settings/logout у этого приложения есть ещё внутри редиректы, чтобы не приходилось врученьки для каждого локейшна прописывать правило. Есть какие-то варианты как вырезать этот мусор?
  • Вопрос задан
  • 433 просмотра
Пригласить эксперта
Ответы на вопрос 1
opium
@opium
Просто люблю качественно работать
Реврайт тут не поможет, подпилите саму апку джавовскую
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы