![nginx 处理主机名上的奇怪请求](https://linux22.com/image/759418/nginx%20%E5%A4%84%E7%90%86%E4%B8%BB%E6%9C%BA%E5%90%8D%E4%B8%8A%E7%9A%84%E5%A5%87%E6%80%AA%E8%AF%B7%E6%B1%82.png)
应用程序日志显示对域名的请求,而该域名实际上是服务器的 IP 地址
host = 'www.166.77.88.99'
因此我创建了一个附加启用的站点,如下所示:
server {
listen 80;
listen 443;
server_name 166.77.88.99 www.166.77.88.99;
location ~ / {
return 404;
}
}
这确实会处理对 404 响应的 IP 地址的请求。但是,无法测试第二个主机名;任何本地机器都会返回
curl http://www.166.77.88.99/
Could not resolve host: www.166.77.88.99
我不明白如何以这种方式生成到 ipaddress 的流量?nginx 如何拒绝这种情况?
答案1
您只需设置Host
标题并使用类似 curl 的工具将请求发送到 IP 地址即可。
例如
curl -H 'Host: www.166.77.88.99' http://166.77.88.99