我需要帮助在apache2的虚拟主机设置。 我不希望用户直接使用像http://55.66.77.88这样的服务器ip来访问我的网站,并且希望确保只有在input特定域名(example.com)时才会打开。直接IP访问应该导致redirectexample.com。
使用mod_rewrite这应该工作
RewriteCond %{HTTP_HOST} !^example\.com [NC] RewriteCond %{HTTP_HOST} !^$ RewriteRule ^/?(.*) http://example.com/$1 [L,R,NE]
但是这应该被移到serverfault.com
只需创build一个在任何其他VirtualHost之前定义的默认VirtualHost。 如果HTTP / 1.1 Host头包含一个没有VirtualHost存在的域,根本没有域,或者如果使用HTTP / 1.0,默认的VirtualHost将被提供给客户端。
你可以很容易地把一个RedirectPermanent指令放在默认的VirtualHost中。
有关详细信息,请参阅Apache httpd文档中的深入讨论虚拟主机匹配 。
如果找不到匹配的虚拟主机,则会从第一个虚拟主机提供请求,并在客户端所连接的IP的列表中显示匹配的端口号(如前所述)。