我们在使用 lnmp 给网站添加域名之后,多数都要再加一个 301 重定向,比如把主域名跳转到 www 域名上,还有把主域名和 www 域名都跳转到 https 上面去。前面写过一些有关 301 重定向的教程,没做过的朋友可以参考下面教程去做。
lnmp1.4 自动生成 Let’s Encrypt 免费证书
下面把我实际使用中遇到的一些情况。比如下面这个案例中就出现的问题是如何解决的。
一个网站搬家到新 VPS,如果是手动分别备份网站数据和数据库文件的,要注意先把这两样东西上传和域名解析到新 IP(需要用国外 IP 网站验证是否已经解析过去了)之后再用 lnmp 添加虚拟主机和 Let’s Encrypt 免费证书。如果域名还没有解析到新 IP 就冒然添加虚拟主机会导致 SSL 证书添加失败,给后面的搬家工作添加麻烦。
用 lnmp1.4 建立 php 环境后添加 www 域名的虚拟主机和 Let’s Encrypt 免费证书,不用添加主域名的虚拟主机。我们的目的是主域名和 www 域名都跳转到 https://www 域名上去。
这时候为了实现主域名和 www 域名的 301 重定向到 https 域名,就要手动添加一些代码了,不过新手别害怕,不是很难,下面跟着来看看。
打开 Xshell 输入以下代码
vi /usr/local/nginx/conf/vhost/你的域名.conf
这时候你会看到下图红色文字的地方,注意你打开的时候下图中只有 www 域名,主域名是老魏后来手动添加上去的。
敲击 a,进入编辑状态,用上下左右键配合把主域名添加上去,记得和 www 域名之间有空格。
添加完毕之后就是下图的样子。
添加完成后保存,执行:/etc/init.d/nginx restart 重启 nginx,使其生效。
打开浏览器测试一下所有域名都跳转到 https 的 www 域名上,调试成功。
如果这里不把主域名也添加进去,当访客输入主域名访问的时候,就会弹出 lnmp 一键安装包的提示页面,这样会暴露我们网站的 php 环境,对安全构成威胁。
这篇文章写的比较乱,主要是平时遇到一些朋友的问题以及我个人使用中遇到的,记录下来一是自己以后遇到类似问题可以快速搜索答案,再一个能帮助有相同需要的网友。
暂无评论内容