ric*_*ent 5 mac-osx virtualhost apache-2.2
我有几个网站,都建立在http-vhosts.conf
各自的ServerName
和 中DocumentRoot
,他们工作得很好,花花公子。
但是当我访问服务器的 IP 地址 URL 时,我取回了第一个虚拟主机中的文件,而不是 Apache 从我期望的位置提供http.conf
文件的DocumentRoot
.
如何配置Apache以便通过IP地址访问服务器,无论是外部还是环回,都不会返回第一个VirtualHost?
这是第一个 VirtualHost,如果我通过 IP 访问 Web 服务器,我目前将其作为响应返回:
<VirtualHost *:80>
ServerName "delaneatallent.com"
ServerAlias "www.delaneatallent.com"
DocumentRoot "/Library/WebServer/Documents/delanea"
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
如果这很重要,请在 OS X 上使用 Apache 2.2.14。
:wq
小智 10
简而言之,您不能 - 这就是 Apache 的工作方式。如果您正在侦听该 IP(根据 Prix 的评论),那么 Apache 将使用在提供 IP 请求时定义的第一个虚拟主机。
如果这是不可取的,那么考虑将第一个虚拟主机更改为您实际想要通过 IP 提供服务的主机。如果这不是你想要的,那么考虑将重定向作为第一个虚拟主机,让它去你想要的地方。
# default
<VirtualHost *:80>
RewriteEngine on
RewriteRule ^/(.*) http://othersite.com/$1 [L,R]
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
您无法阻止 Apache 侦听该 IP,但是您可以通过一点创造力让它做其他事情,做您想做的事情。
归档时间: |
|
查看次数: |
5899 次 |
最近记录: |