Назад | Перейти на главную страницу

Перенаправление порта Apache

Я знаю, что на этот вопрос есть масса ответов, но почему-то ни один из них мне не помог. У меня есть Ubuntu, на которой запущено 3 веб-приложения, каждое на разных портах (8080-8282) - jira, confluence и еще одно. Теперь я купил доменное имя и связал три поддомена с IP-адресом моего сервера, проблема в том, что все они указывают на один и тот же IP-адрес и на порт 80. Итак, я думаю, мне нужен сервер Apache сейчас. Теперь я хочу, чтобы apache перенаправил:

Желательно, чтобы порт не отображался. Насколько я понимаю, я должен добавить несколько строк в /etc/apache2/httpd.conf, и поэтому я попробовал (это буквально весь мой /etc/apache2/httpd.conf):

RewriteEngine on
RewriteCond %{HTTP_HOST} http://jira.mydomain.com/
RewriteRule ^(.*)$ http://jira.mydomain.com:8181 [L,R]
RewriteCond %{HTTP_HOST} http://wiki.mydomain.com/
RewriteRule ^(.*)$ http://wiki.mydomain.com:8080 [L,R]

Но это не работает (всякий раз, когда я пытаюсь, например, wiki.mydomain.com, я получаю сайт Apache по умолчанию). Так что же мне здесь не хватает? (Я знаю, что для того, чтобы скрыть номер порта, мне придется использовать прокси, но сначала я просто хочу включить перенаправление).

Я бы попытался использовать apache таким образом

Используйте Vhosts и mod_proxy

это довольно грубо (не ожидайте вырезать и вставить) :)

<VirtualHost jira.mydomain.com:*>
ProxyPreserveHost On
ProxyPass / http://jira.mydomain.com:8181/
ProxyPassReverse / http://jira.mydomain.com:8181/
ServerName jira.mydomain.com
</VirtualHost>

<VirtualHost wiki.mydomain.com:*>
ProxyPreserveHost On
ProxyPass / http://wiki.mydomain.com:8080/
ProxyPassReverse / http://wiki.mydomain.com:8080/
ServerName wiki.mydomain.com
</VirtualHost>