首先,说下部署的环境是在ubuntu下使用apache搭建的wordpress。
因为是个人网站,所以就只用的免费的证书了,通过Certbot来安装Let’s Encrypt证书,并自动配置 apache。
步骤如下:
1.安装Certbot
sudo apt install certbot python3-certbot-apache
2.使用certbot自动配置apache
# 过程中需要填写邮箱、同意条款、要启用HTTPS的网站域名
sudo certbot --apache
3.若未配置成功(可选)
# 删除产生冲突的包
sudo rm -rf /usr/local/lib/python3.10/dist-packages/urllib3
sudo rm -rf /usr/local/lib/python3.10/dist-packages/requests_toolbelt
# 更新所有安装包
sudo apt update
sudo apt upgrade -y
# 重新安装certbot及urllib3
sudo apt install --reinstall certbot python3-certbot-apache
sudo apt install python3-urllib3
4.修改配置文件
# 停用默认的配置文件
sudo a2dissite default-ssl.conf
# 启用certbot生成的配置文件
sudo a2ensite 000-default-le-ssl.conf
# *注意:默认及certbot生成的配置文件名请以自己的实际情况为准
5.检查配置
000-default.conf 文件的 <VirtualHost *:80> 应该包含如下配置
# 重定向所有HTTP流量到HTTPS
RewriteEngine on
RewriteCond %{SERVER_NAME} =your_domain [OR]
RewriteCond %{SERVER_NAME} =www.your_domain
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
最后重启下apache应该就没有问题了。
另外说下,Let’s Encrypt 的证书文件在生成的时候,会告诉你目录位置。
如果忘记了话,可以在这里查找下:
/etc/letsencrypt/live/your_domain/
- fullchain.pem: 包含完整的证书链。
- privkey.pem: 私钥文件。
发表回复