今天我的服务器被一个域名恶意解析,查了一下,是301重定向过来的,网上查了一下,发现用关闭空主机头来防止域名恶意解析,在httpd-vhost.conf里添加以下代码
NameVirtualHost * <VirtualHost *:80> DocumentRoot "E:/error" ServerName abc.com </VirtualHost>
这个方法的确解决了我的问题,但是我不太懂这里的原理....
欢迎选择我的课程,让我们一起见证您的进步~~
我知道nginx是这样设置的,Apache的原理应该差不多:
server { listen 80 default; server_name _; return 444; }
如果nginx没有找到server{}里面匹配的域名,又被恶意解析的话,则使用_这个默认的server_name,直接返回444自定义状态码,也就是主动关闭请求。也可以使用499,这是nginx另一个自定义状态码,意思是客户端等不及服务器响应,主动关闭连接。
_
444
499
就是加入一个虚拟主机,将所有的对于abc.com的访问都用 E:/error 文件夹内部的内容来响应。
我知道nginx是这样设置的,Apache的原理应该差不多:
如果nginx没有找到server{}里面匹配的域名,又被恶意解析的话,则使用
_
这个默认的server_name,直接返回444
自定义状态码,也就是主动关闭请求。也可以使用499
,这是nginx另一个自定义状态码,意思是客户端等不及服务器响应,主动关闭连接。就是加入一个虚拟主机,将所有的对于abc.com的访问都用 E:/error 文件夹内部的内容来响应。