我试图在非标准端口(8787)上通过Apache(ubuntu 14.04 LTS上的v2.4.7)提供2个站点。这是为了适应代理设置(我有nginx在同一个专用服务器上的端口80上为其他站点提供服务)。我非常有信心代理配置很好但是vhost似乎没有在Apache级别得到尊重(即当我直接命中端口8787时,nginx没有触及)。我的设置看似非常简单,如下:
<VirtualHost *:8787>
ServerName site1.com
ServerAlias www.site1.com;
DocumentRoot "/var/www/site1.com"
<Directory "/var/www/site1.com">
AllowOverride All
</Directory>
</VirtualHost>
和...
<VirtualHost *:8787>
ServerName site2.com;
ServerAlias www.site2.com;
DocumentRoot "/var/www/site2.com"
<Directory "/var/www/site2.com">
AllowOverride All
</Directory>
</VirtualHost>
我还有一个&#34;听8787&#34;换掉&#34;听80&#34;我的顶级/etc/apache2/ports.conf文件中的行。这是我所做的自定义配置的总和。这两个站点都已启用a2ensite,并且已禁用000-default vhost。我通过查看/ etc / apache2 / sites-enabled中的符号链接来检查这是否有效。我已经多次重启Apache(w / sudo)并重启了整台机器几次。无论如何,当我点击http://site2.com:8787(以及http://site1.com:8787)时,我将获得site1。
我到处寻找,试图找出可能造成这种情况的具体事情,我完全没有想法。如果有人处理了这个问题,请告诉我,我会立即跟进修复状态。
答案 0 :(得分:1)
更新:我解决了这个问题。它实际上是我不小心插入的vhost conf某些行上的尾随分号(我想我已经编辑了太多的Nginx conf文件)。我想也许他们被Apache作为主机名的一部分对待