本文最后更新于 2023-05-14,文章内容可能已经过时。

禁止别人直接通过IP访问网站,在nginx的server配置文件前面加上如下的配置,如果有通过IP直接访问的,直接拒绝连接(需要去掉别的server下的default_server)。

server {
 listen 80 default_server;
 return 444;
}

在修改Nginx的配置之前务必做好备份,修改完后要重载一次Nginx否则不会生效。

规则里返回444状态码而不是403因为444状态码在Nginx中有特殊含义。Nginx444状态是直接由服务器中断连接,不会向客户端再返回任何消息,比返回403更加的简单粗暴。