如今,在Linux VPS、服务器中架设WEB环境确实比较方便,我们常用的有LNMP和OneinStack一键安装包,这两个脚本我们公司几个技术都有在使用,于是对于客户网站服务器的部署我们一般也用这类的脚本,一来节省时间,二来功能确实还是比较齐全的。
对于一般的客户网站,如果需要用到SSL证书,我们会直接给安装Let's Encrypt免费证书,因为脚本都自带直接匹配安装,不需要额外的第三方申请。但是,今天遇到这个客户需要用到第三方证书,证书已经从其他地方申请过来,需要安装到他的网站中。
我看到他所在的服务器采用的是OneinStack一键WEB环境安装的,老蒋之前在"OneinStack lnmp网站环境部署Namecheap SSL安全证书方法"较早也有记录到安装自定义申请的证书,但是稍微有点不同,因为当前已有非HTTPS网站,所以记录下这次的解决方法。
老蒋博客中分享过其他几篇您可能喜欢的SSL类文章:
1、cPanel面板从基础到精通 - cPanel安装自定义/外部申请的SSL证书
2、网站实现HTTPS加密进阶 - 将Namecheap SSL证书配置到网站
3、常规网站Web环境配置SSL证书 - Nginx、Apache、IIS
第一、准备工作
1、备份数据(一定要备份)
因为当前服务器环境中有网站的,所以直接快照备份和本地备份,虽然搞错的概率比较小,但是还是确保万无一失。以及我还同时将这个站点的文件目录(数据库我不动),重新复制一份放到一个目录下,因为等会需要迁移拷贝。
2、删除当前站点
因为我准备重新添加当前这个站点,所以我需要先删除站点。
./vhost.sh del
然后根据提示输入我们要删除站点的目录名称,然后删除掉。(前提是我们已经将当前站点备份好在本地、快照备份,以及我还单独拷贝到旁边一个目录)
第二、添加站点选择自定义SSL
1、添加站点
./vhost.sh
正常的添加站点。
这里添加站点的时候,我们需要选择2,因为老蒋手上有客户给的证书。
2、配置网站
正常的配置网站目录和跳转强制HTTPS。
3、配置证书信息
这里我们正常的配置站点和证书信息,一般直接回车就可以了。伪静态部分根据网站设置,因为他是WP内核的外贸英文企业网站,所以就选择wordpress内置伪静态规则。
4、记录证书位置
设置完毕之后,虽然是报错,因为我们还没有上传证书。然后记录下证书的位置,一共有三个文件。.crt、.key、.csr。
第三、上传证书且重启生效
这里将客户给的证书三个文件,上传到对应的目录中,而且命名需要和上面图片中生成的一样。
配置完毕之后,我们需要重启nginx生效。
service nginx reload
这样证书就配置完毕。
第四、数据还原和收尾工作
1、我们将之前拷贝的一份网站数据文件再转移到当前站点对应目录下。数据库没有变动所以不用修改数据库配置文件。
2、修改站点URL。因为目前已经是SSL证书且强制跳转,我们需要修改站点中可能当初有的HTTP地址将改成HTTPS,要不我们在地址栏会看不到绿锁。对于WP程序强制跳转设置,我们可以在数据库对应的目录中设置两处URL。
3、最后我们再检查网站是否可以正常访问,以及后台登录后看是否正常。如果网站内容有非HTTPS地址的,还可以用替换模式(两个WordPress内容批量快速替换字符方法)将URL全部批量替换。
本文出处:老蒋部落 » OneinStack一键包环境快速添加自定义SSL证书部署网站方法 | 欢迎分享( 公众号:老蒋朋友圈 )