在托管网站address.com(使用drupal管理)的服务器上使用apache2服务器(在端口8080上运行)我想安装一个在同一端口8080上运行的webservice(tomcat7 / axis2)。是否有这样做吗?还有svn,trac在该端口上运行。不幸的是,由于安全限制,这是唯一可从外部访问的端口。 谢谢
答案 0 :(得分:1)
您可以绝对在同一端口上公开多个服务,只要它们都位于不同的URL命名空间中。例如,您已经在端口8080上运行Trac和svn,显然您已经正在执行您正在询问的内容。
要添加Tomcat,通常会:
ProxyPass
和ProxyPassReverse
通过端口8080上的网络服务器公开Tomcat服务。例如,如果您想在http://myserver:8080/tomcat
处显示Tomcat实例,则可以在Apache配置中添加以下内容:
ProxyPass /tomcat/ http://localhost:8888/
ProxyPassReverse /tomcat/ http://localhost:8888/
您可以阅读有关这些指令here的更多信息。请注意,您可能需要对Tomcat应用程序执行其他配置,以反映它在/tomcat/
外部可见的事实。
您还可以利用虚拟主机,假设您为此系统控制DNS;在这种情况下,您可以:
http://myserver-trac:8080/
导致与{\ n}}不同的VirtualHost
配置
http://myserver-tomcat:8080/
您可以阅读有关基于名称的虚拟主机here的更多信息。
答案 1 :(得分:0)
当您安装侦听另一个端口(在localhost上)的Web服务时,您可以使用Apache作为代理(使用mod_proxy)来访问该服务。
也许有用:How to rewrite / proxy an Apache URI to an application listening on a specific port / server?