如何防止用户通过IP地址访问网站

时间:2019-08-01 04:58:58

标签: django

我有一个django网站,可以通过“ www.mysite.com”进行访问。该网站的IP地址是:33.33.33.33。

通过输入33.33.33.33,网站可以正常工作。

是否可以通过33.33.33.33禁用访问?我只希望“ www.mysite.com”正常工作。

1 个答案:

答案 0 :(得分:0)

您可以在服务器设置中执行此操作。例如,假设您的服务器是Apache2,那么您可以添加以下指令(根据https://httpd.apache.org/docs/2.4/howto/access.html的文档)并重新启动服务器。在下面的示例中,将阻止访问10.252.46.165 IP地址。请注意,指令/语句的顺序通常很重要。请确保您仔细阅读了文档。

<RequireAll> 
    Require all granted 
    Require not ip 10.252.46.165 
</RequireAll>

如果它是nginx服务器,则可能需要仔细阅读此链接(https://docs.nginx.com/nginx/admin-guide/security-controls/controlling-access-proxied-tcp/#restrict)。

他们给出了一个示例,其中限制了IP 192.168.1.2。参见下文,但请确保您了解上述文档中的每个指令。

stream {
...
    server {
                 listen 12345;
                 deny 192.168.1.2;
                 allow 192.168.1.1/24;
                 allow 2001:0db8::/32;
                 deny all;
                 }
}

请仔细阅读文档,每一节做什么,键入语句的顺序很重要。因此,请仔细阅读。

如果需要更多说明,请告诉我。