Nginx关闭默认站点/空主机头(禁止IP直接访问、防止域名恶意解析)详解程序员

Nginx关闭默认站点/空主机头(禁止IP直接访问、防止域名恶意解析)

   默认情况下,只要将域名解析到vps的IP上,访问该域名就会访问到lnmp默认虚拟主机的默认页面。为了防止别人恶意将域名解析到自己的IP上,可以通过以下方法进行,修改/usr/local/nginx/conf/nginx.conf ,将里面的默认的虚拟主机server{}段修改为如下即可:

server { 
listen 80 default_server; 
server_name _; 
return 500; 
}

当然也可以将return 500;替换为rewrite ^(.*) http://blog.ytso.com permanent;   将流量导入到你指定的网站上。
最后记住,/usr/local/nginx/sbin/nginx -s reload

使用空主机头后,原默认虚拟主机下的文件,如PHPmyadmin将无法访问,需要你加个二级域名指向phpmyadmin目录就行了。

对于开启了https的用户,未添加https站点的域名,也可以https访问,只是会访问默认的https网站并提示不安全、域名证书不匹配。

开启SSL后https的空主机头的设置

server { 
listen 443 default_server; 
server_name _; 
ssl on; 
ssl_certificate 随便设置一个ssl证书; 
ssl_certificate_key 随便设置一个ssl证书的key; 
return 500; 
}

一年后总结

三种办法
一个是空头主机去除,也就是军哥的办法.但是如果我用的直接就是这个默认站点(空头主机)如何
二个是用vhost命令去弹开,向楼上说的,但是这里无端多了一个配置文件和子站点目录
三个是用反向代理去弹开.直接在conf里边加反向代理配置即可.

    第一种我想比较节约资源,但是会将空头主机删除,对于需要这个默认站点的人来说,有点无奈.
2,3应该都会占用一些资源,但是2的方法,如果恶意解析的域名有一串如何?你得建立多少个文件夹.3相对折中.

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/1945.html

(0)
上一篇 2021年7月15日
下一篇 2021年7月15日

相关推荐

发表回复

登录后才能评论