为了防止被恶意解析,我们通常需要禁止通过ip地址直接访问网站。在宝塔环境下,如果网站没有使用SSL(https),我们只需要在宝塔默认站点设置里,选择”未设置默认站点”就行了。
如果我们的网站启用了SSL,想要禁止利用ip直接打开网站则要麻烦许多。网上很多教程都是需要新建一个不常用的站点来实现,其实是没有必要的。Nginx的根目录一般就是html文件夹,相当于已经有一个站点了。
具体步骤如下:
宝塔面板”文件”根目录搜索”0.default.conf”文件,注意勾选”包含子目录”,”0.default.conf”的文件路径如下。
/www/server/panel/vhost/nginx/0.default.conf
这个文件是宝塔面板默认站点的nginx规则,我们把之前的内容删除,写入以下代码:
server { listen 80 default; listen 443 default_server; server_name _; return 444; ssl_certificate /www/server/panel/vhost/cert/www.1itao.com/fullchain.pem; ssl_certificate_key /www/server/panel/vhost/cert/www.1itao.com/privkey.pem; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; ssl_session_timeout 10m; ssl_prefer_server_ciphers on; }
第3行是监听80端口,第4行是监听443端口,第6行return返回444响应就可以了,不想返回444,也可以改成502或404等其他错误提示;
另外,监听443端口需要有ssl证书,证书路径请填写至第7、8行,理论上宝塔文件中存在的任意pem路径都可以,比如上边的路径大家也可以替换成以下两个:
/www/server/panel/ssl/certificate.pem; /www/server/panel/ssl/privateKey.pem;
PS,上述路径中”www.1itao.com”注意替换成您自己的域名网址!
评论0