在我的 nginx 日志中,我可以看到使用我的服务器的 IP 地址而不是域名发出的请求。
除了它是机器人之外,我想不出任何合理的理由。
有没有什么办法可以阻止不使用域名的网络流量访问我的网站?
答案1
我认为你应该做一个类似“黑洞”的虚拟主机,它有一个server_name
指令,指向你的服务器的 IP 地址并返回 404(或 .. 444)。类似这样:
server {
listen 80 default_server;
server_name <the ip address of your server>;
return 404;
}
HTTP 444 状态代码非常简洁,您应该考虑使用它:
444 连接关闭且无响应 非标准状态代码,用于指示 nginx 关闭连接而不向客户端发送响应,最常用于拒绝恶意或格式错误的请求。
客户端看不到这个状态代码,它只出现在 nginx 日志文件中。