在相同的服务器和同一端口上运行TeamCity和YouTrack?

我想使用自包含的jar(如果这就是所谓的)从jetbrains.com下载在同一台服务器(Ubuntu的Linux)上运行。 我认为他们使用java运行一些内部的tomcat / catalina服务器。

我一直在不同的端口上运行这些,并使用不同的主机名来避免会话问题(因为我知道会话绑定到主机名)。

这两个主机名buildserver.local和youtrack.local指向相同的IP地址。 但是在不同的端口上定义了什么服务器来响应请求。 这对于只允许防火墙外部的端口80的防火墙造成一些麻烦。

反正有configuration这些服务器/服务来响应的主机名而不是端口?

同样在configuration文件中,在server.xml中的连接器节点上有一个名为“redirectPort”的属性。 它有什么作用?

..fredrik

编辑:

我在apache中做了虚拟主机来尝试redirect到我的内部地址。

NameVirtualHost *:80 <VirtualHost *:80> ProxyPreserveHost On ProxyPass / http://youtrack.local:8080/ ProxyPassReverse / http://youtrack.loca:8080/ ServerName youtrack.local ServerAdmin [email protected] </VirtualHost> 

但是我得到403错误。 而在Apache错误日志中,我得到这个:

 client denied by server configuration: proxy:http://youtrack.local:8080/ 

当我在本地networking工作或通过VPN时,它工作。 所以我认为这是一些在哪里的Apacheconfiguration。 有任何想法吗?

EDIT2:

find解决scheme。 在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实例。

tar.gz中的TeamCity包含Tomcat。 .jar版本中的YouTrack包含Jetty。 我们有一个关于如何设置TeamCity和YouTrack在同一台服务器上运行的简短指南 。