...
https://blog.rj-bai.com/post/86.html
修改 nginx.conf 文件
nano /usr/local/nginx/conf/nginx.conf
空头主机,说白了就是没有绑定在你服务器上的域名,可能会有恶意解析,所以最好禁掉,在这里大概说一下吧,Nginx的虚拟主机是通过HTTP请求中的Host值来找到对应的虚拟主机配置,如果没找到,那Nginx就会将请求送到default_server的节点来处理,如果没有指定default_server,就会找配置文件里所配置的第一个虚拟主机,我现在的情况是直接访问我源站IP或是随便写个hosts指到我的源站都会跳到本域名,现在给他改一下,直接返回 502。
编写 default_server 配置文件
server {
listen 80 default_server;
server_name _;
return 502;
}
server {
listen 443 default_server;
server_name _;
ssl_certificate /usr/local/nginx/certs/lingchu.me.crt;
ssl_certificate_key /usr/local/nginx/certs/lingchu.me.key;
include /usr/local/nginx/vhost/extend/ssl;
return 502;
}
443端口需要一个证书,随便搞一个就行了,这样配置之后所有空头主机都会返回 502,也可以用rewrite,大概就这样。
测试配置是否正确
/usr/local/nginx/sbin/nginx -t
最终配置
配置http强制跳转到https
其实配置文件位置不是很难找,一般是在/nginx/conf/vhost/目录下,文件命名一般是“你的域名.conf”
server
{
listen 80;
server_name blog.avapxia.club;
rewrite ^(.*)$ https://blog.avapxia.club permanent;
}