我正在尝试设置一个Apache Web服务器,它有几个WordPress Multisite安装。我的目标是让客户将其域名指向其中一个IP地址209.50.xxx.xxx,并将流量定向到WP Multisite目录。我还有其他域需要转到特定目录,无论它们的IP地址是什么。我似乎无法让IP Based和Wildcard VirtualHosts协同工作。我只能得到一个或另一个。在下面的当前设置中,我可以在指向209.50.xxx.xxx的任何域上获得流量以转到正确的目录,但是app.example.com和www.example.com只会收到错误“ERR_TOO_MANY_REDIRECTS”。
## All Traffic to IP: 209.50.xxx.xxx on Port 80 (Catch All) ##
<VirtualHost 209.50.xxx.xxx:80>
DocumentRoot /var/www/example/site/public
</VirtualHost>
## All Traffic to IP 209.50.xxx.xxx on Port 80 with Domain app.example.com ##
<VirtualHost 209.50.xxx.xxx:80>
ServerName app.example.com
DocumentRoot /var/www/example/app/public
</VirtualHost>
## All Traffic to any IP on Port 80 with Domain www.example.com or example.com ##
<VirtualHost *:80>
ServerName www.example.com
ServerAlias example.com
DocumentRoot /var/www/example/main/public
</VirtualHost>
## All Traffic to any IP on Port 80 with Domain www.other-example.com or other-example.com ##
<VirtualHost *:80>
ServerName www.other-example.com
ServerAlias other-example.com
DocumentRoot /var/www/other-example/main/public
</VirtualHost>
我尝试使用当前虚拟主机catchall的不同顺序翻转到最后,结果相同。
有关如何解决此问题的任何想法?
答案 0 :(得分:0)
我设置了一个带有2个IP地址的虚拟机,以便我可以仔细测试不同的虚拟主机配置,我相信我有解决方案。似乎如果我开始在VirtualHost行中使用IP地址(<VirtualHost 192.168.1.201:80>
而不是<VirtualHost *:80>
),那么我需要为每个VirtualHost块执行此操作。然后对于每个IP的“Catch-All”块,我首先将其保留在文件的顶部(顺序很重要。)