0

如果我创建一个 vhost 指令,它将始终捕获此 IP 地址上的所有请求。即使我设置了 ServerName,所有其他请求也会被重定向到该条目的 DocumentRoot。如何删除除此特定域之外的所有请求?例如:

VirtualHost 46.108.122.78:80
    ServerName mysite.com

(我知道我可以在没有 ServerName 的情况下指定第二个指令并将例如重定向到一个空目录。但是,我想明确删除这些请求。)

4

1 回答 1

1

当没有其他服务器名/服务器别名匹配时,给定 ip:port 的第一个基于名称的虚拟主机是默认值。

# not necessary in 2.4
NameVirtualHost 46.108.122.78:80

<VirtualHost 46.108.122.78:80>
ServerName xxx.example.com
# any unmatched hostname on goes here
RewriteEngine on
RewriteRule .* - [F]
</VirtualHost>
<VirtualHost 46.108.122.78:80>
ServerName foo.example.com
DocumentRoot ...
</VirtualHost>
于 2013-05-02T12:28:27.633 回答