如何在apache的同一台服务器上运行两台虚拟主机

我已经按照说明在Apache中运行两个Web应用程序,我现在的confs是这样的:

  • apache2.conf: http : //paste.ubuntu.com/1547286/
  • httpd.conf: http : //paste.ubuntu.com/1547288/
  • ports.conf: http ://paste.ubuntu.com/1547290/

我有一个端口80上的PHP Web应用程序和端口88上的轨道应用程序。该PHP应用程序工作正常,但轨道应用程序不会加载(超时),如果我尝试去virtualdiscoverycenter.net:88。 如果我切换它,使轨应用程序80和PHP应用程序88,轨应用程序工作,但PHP不会加载。 这显然不是一个rails或php的问题。 我添加端口80和88的iptables,但它仍然无法正常工作。 任何见解或帮助将不胜感激。 如果您想查看某些命令的输出,请告诉我。
谢谢。

– 编辑:我也禁用iptables和ufw,但仍然有一个超时..我很困惑。 –edit2:事实certificate,我不能使用这些端口的东西。 它在8000端口工作很好。感谢所有的帮助,对此感到抱歉。

看看IPtables规则,你需要允许stream量到端口88。

iptables -A INPUT-p tcp --dport 88 -j ACCEPT 

这应该打开端口88,所以你可以连接到运行的程序。

您可能想要在Apache服务器上安装Phusion Passenger ,这将允许您在同一端口上运行PHP和Rails应用程序,并且安装起来非常简单

几年前我必须在我的工作中做到这一点,我使用mod_rewrite,我的问题解决了。

请参阅: http : //httpd.apache.org/docs/2.4/mod/mod_rewrite.html

你可以这样做:

 <VirtualHost *:80> ServerName j0hntheman.com ProxyRequests Off ProxyPreserveHost On <Proxy *> Order allow,deny Allow from all </Proxy> ProxyPass / http://205.234.222.223:8087/ ProxyPassReverse / http://205.234.222.223:8087/ RewriteEngine On RewriteRule ^/ /SPL/ [L,P,R] </VirtualHost> 

然后做另一个,当连接到你的80或443他们find了正确的服务器。 ;-) 希望能帮助到你!

如果你放了会发生什么

NameVirtualHost *:88

NameVirtualHost *:80

代替

NameVirtualHost *:80

NameVirtualHost *:88