Как перенаправить URL с портом на URL с контекстом? - PullRequest
0 голосов
/ 27 марта 2019

У меня есть сервер с apache (2.4.18) установлен

Я установил несколько приложений на сервер, таких как Grafana, Sonarqube и MySQL Enterprise Monitor (MEM)

Каждое приложение имеет URL-адрес, подобный этому

http://test.com:9000

http://test.com:3000

Я ищу решение, которое позволило бы мне перенаправить этот URL-адрес с порта на URL-адрес с контекстом, что-то подобное

http://test.com:9000  --> http://test.com/sonar

http://test.com:3000 --> http://test.com/grafana

Я добавил некоторый код в / etc / apache2 / sites-enabled / 000-default.conf file

Redirect permanent /sonar http://test.com:9000

Redirect permanent /grafana http://test.com:3000

, но когда я ввожу http://test.com/sonar в веб-браузере, он перенаправляетна http://test.com:9000 только URL

Я хочу, чтобы http://test.com/sonar этот URL сохранялся в веб-браузере

Ответы [ 2 ]

0 голосов
/ 27 марта 2019

Если вы используете Redirect permanent, сервер отправит 301 ответ клиенту (вместе с новым Location). Это приведет к тому, что браузер отправит новый запрос, на этот раз новому местоположению, а также новое местоположение будет показано в адресной строке браузера. Что вам нужно, это обратный прокси. Для этого вам нужно убедиться, что mod_proxy включен в вашей конфигурации apache (обычно он включен по умолчанию), и поместить что-то подобное в ваш файл .conf:

ProxyPreserveHost On
ProxyPass        /sonar   http://127.0.0.1:9000
ProxyPassReverse /sonar   http://127.0.0.1:9000
ProxyPass        /grafana http://127.0.0.1:3000
ProxyPassReverse /grafana http://127.0.0.1:3000

Вероятно, вам также придется уведомлять ваши приложения о том, что они работают в контексте без полномочий root (путем внесения некоторых изменений в конфигурацию):

http://docs.grafana.org/installation/behind_proxy/

https://docs.sonarqube.org/latest/setup/install-server/

0 голосов
/ 27 марта 2019

Вам нужно прокси-запросы, а не перенаправлять их. Используйте директиву ProxyPass, как указано в официальной документации прокси-сервера Apache

Например, добавьте этот блок местоположения в вашу конфигурацию:

<Location "/sonar">
    ProxyPass "http://test.com:9000"
</Location>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...