如何在Apache中禁用直接IP访问

时间:2018-08-30 00:06:00

标签: apache ssl xampp

我有一个具有CloudFlare保护的网站,看起来也很不错,但是如果您输入服务器的原始IP地址,则可以正常输入。

我正在使用Apache(XAMPP)和SSL(https://)

当您从具有CloudFlare的IP地址输入时,我想要类似的东西,这会引发错误1003

2 个答案:

答案 0 :(得分:0)

您可以验证请求中收到的域是否与您的站点域匹配。如果不是,请强制重定向到用户。像这样:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www.example.com
RewriteRule (.*) https://www.example.com$1 [R=301,L]

因此,IP访问将被强制返回到域名。 显然,您可以返回任何东西,这只是我经常看到的一种方法。

答案 1 :(得分:0)

编辑或创建默认虚拟主机,并将其放入其中:

<VirtualHost *:80>
    ServerName xxx.xxx.xxx.xxx
    Redirect 403 /
    DocumentRoot /var/www/html
</VirtualHost>

xxx.xxx.xxx.xxx是您的服务器IP地址

之后,重新启动您的Apache

sudo a2ensite your-vhost.conf
sudo systemctl restart apache2

希望有帮助