温馨提示:
在操作前,登录阿里云管理控制台,为实例新建一个快照,一旦出错可以方便回滚磁盘。成功后可以删除快照,要保留也是可以的,不过需要按快照大小进行定期付费。
为了给搭建在阿里云ECS的网站添加SSL证书,参考了网络上的各种教材,还是各种错误,没有一个是完整适用的,这两天都操碎了心。
闲话按下不表,直接上操作。
1 网站配置
- ubuntu 16.04
- Apache 2.4.18
- PHP 7.0.22
- MySQL 5.0.12
- WordPress 5.0.2–zh_CN
2 修改主机名
PuTTY连接SSH后:
vi /etc/hostname
修改主机名后,保存退出,重启VPS生效:
reboot
3 添加主机名
vi /etc/hosts
在“127.0.0.1 localhost”后面添加主机名,譬如:
127.0.0.1 localhost eia543
4 准备配置环境&安装加密客户端
sudo apt-get purge python-virtualenv python3-virtualenv virtualenv sudo pip install --upgrade pip sudo pip install virtualenv sudo apt-get update sudo apt-get install software-properties-common sudo add-apt-repository ppa:certbot/certbot sudo apt-get update sudo apt-get install python-certbot-apache
5 使用Let’s Encrypt生成SSL证书
以本站为例,运行前需自行替换域名:
sudo certbot --apache -d eia543.com -d www.eia543.com
6 自动更新SSL证书
sudo certbot renew --dry-run
7 验证SSL证书状态
以本站为例,运行前需自行替换域名:
https://www.ssllabs.com/ssltest/analyze.html?d=eia543.com&latest
如果检测结果达不到A,可根据提示信息进行处理,譬如:提升网站的SSL强度:由B到A的距离。
8 开启小绿锁
8.1 修改“.htaccess”文件
在网站安装目录下,找到隐藏文件“.htaccess”,在“#BEGIN WordPress”前添加以下内容,网站地址需要替换:
RewriteEngine On RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.)$ https://www.eia543.com/$1 [R=301,L] RewriteCond %{HTTP_HOST} ^eia543.com [NC] RewriteRule ^(.)$ https://www.eia543.com/$1 [L,R=301] #BEGIN WordPress
8.2 替换安装SSL证书前所发布网页中的http链接
- 登录管理后台,安装新插件:Search Regex。
- 启用插件后,在“工具”子菜单中找到,并打开Search Regex界面。
- 填入你需要搜索及替换的内容,如下:填入你需要搜索及替换的内容,如下:
- Search pattern:http://www.eia543.com
- Replace pattern:https://www.eia543.com
- 尝试在不同Source下进行搜索,确认搜索条目无误后,逐一按下“Replace & Save”按钮。
8.3 强制后台和登录使用 SSL
在网站安装目录下,找到文件“wp-config.php”,在文件末端添加以下内容:
define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);
8.4 查找漏网之鱼
一般完成以上3个步骤,都能顺利打开小绿锁。如果还是没有办法显示,我们需要作进一步排查。我们可以在Chrome浏览器中打开网站,在鼠标右键菜单中选择“查看网页源代码”,然后在代码中搜索http域名,譬如“http://www.eia543.com”。
9 参考文献
- sudo 出现unable to resolve host 解决方法
- 阿里云ubuntu16.0.4安装ssl失败,求支援(解决)
- 阿里雲服務器LAMP環境搭建及Let’s Encrypt數字證書配置
- 如何在Ubuntu 16.04 上使用 Let’s Encrypt 对 Apache 进行加密
了解 环评五四三 的更多信息
Subscribe to get the latest posts sent to your email.
《为现有网站添加SSL证书(阿里云专用教程)》有1条评论