Я хочу запустить оба на одном сервере (ubuntu linux), используя самосодержащие банки (если они так называются), загруженные с jetbrains.com. Я думаю, они запускают какой-то внутренний сервер tomcat / catalina с использованием java.
Я запускал их на разных портах и использовал разные имена хостов, чтобы избежать проблем с сеансами (поскольку, насколько я понимаю, сеансы привязаны к имени хоста).
Оба имени хоста buildserver.local и youtrack.local указывают на один и тот же IP-адрес. Но по разным портам определять, какой сервер отвечать на запрос. Это вызывает небольшие проблемы с нашим брандмауэром, который разрешает доступ только к порту 80 за пределами брандмауэра.
Есть ли способ настроить эти серверы / службы для ответа на основе имени хоста, а не порта?
Также в файле конфигурации есть атрибут на узле коннектора, называемый «redirectPort» в server.xml. Что оно делает?
..фредрик
РЕДАКТИРОВАТЬ:
Я сделал виртуальный хост в apache, чтобы попытаться перенаправить на мои внутренние адреса.
NameVirtualHost *:80
<VirtualHost *:80>
ProxyPreserveHost On
ProxyPass / http://youtrack.local:8080/
ProxyPassReverse / http://youtrack.loca:8080/
ServerName youtrack.local
ServerAdmin youtrack@something.com
</VirtualHost>
Но я получаю ошибку 403. И в журнале ошибок apache я получаю следующее:
client denied by server configuration: proxy:http://youtrack.local:8080/
Он работает, когда я нахожусь в своей локальной сети на работе или через VPN. Так что я думаю, что это где-то apache config. Любые идеи?
РЕДАКТИРОВАТЬ2:
Нашел решение. В apache2 / mods-enable / proxy.conf нужно изменить секцию на это:
<Proxy *>
AddDefaultCharset off
Order deny,allow
Deny from all
Allow from all
</Proxy>
Предупреждение: это позволит передавать каждый запрос через прокси. Вы можете зарегистрироваться в mod_access для ограничения доступа.
Я не знаю, есть ли что-то, что вы можете сделать в Tomcat для прослушивания заголовков HTTP-хоста, но если вы установите Apache, пусть он прослушивает порт 80 и, в зависимости от запрашиваемого HTTP-хоста (virtualdir), он выполняет прокси-соединение обратно к экземпляру tomcat на соответствующих портах.
TeamCity в tar.gz содержит Tomcat. YouTrack в версии .jar включает Jetty. У нас есть краткое руководство о том, как настроить TeamCity и YouTrack для работы на одном сервере.