在WordPress中使用免费SSL证书可以通过多种方式实现,以下是综合各来源信息后的详细步骤和注意事项:
一、获取免费SSL证书
- 通过Let’s Encrypt申请
- Let’s Encrypt是最常用的免费SSL证书颁发机构(CA),支持自动续期。多数虚拟主机(如Bluehost、SiteGround)已集成Let’s Encrypt,用户可直接在控制面板(如cPanel)的“SSL/TLS”模块中一键申请。
- 手动申请:若主机不支持自动申请,可使用Certbot工具或插件(如“SSL Zen”)生成证书文件(包含
.key
和.crt
文件)。
- 通过Cloudflare的Flexible SSL
- 注册Cloudflare账户并替换域名的DNS服务器为Cloudflare提供的NS地址。
- 在Cloudflare控制台的“加密”选项中启用“Flexible SSL”,通过其CDN网络自动提供HTTPS服务(无需在服务器安装证书)。
二、安装SSL证书到服务器
- 通过控制面板安装
- cPanel:上传证书文件(
.crt
和.key
)至“SSL/TLS管理器”,并绑定到域名。 - 宝塔面板:在网站设置的“SSL”选项中直接粘贴证书内容(
.pem
和.key
文件需拼接)。
- 手动配置服务器文件
- Nginx:修改站点配置文件,添加SSL监听端口(443)并指定证书路径:
server { listen 443 ssl; ssl_certificate /path/to/certificate.pem; ssl_certificate_key /path/to/private.key; # 其他配置... }
- Apache:在虚拟主机配置文件中启用
SSLEngine
并指定证书路径。
三、配置WordPress启用HTTPS
- 修改站点地址
- 进入WordPress后台的“设置 > 常规”,将“WordPress地址(URL)”和“站点地址(URL)”中的
http://
改为https://
。
- 强制HTTPS重定向
- 插件法:安装“Really Simple SSL”插件,激活后自动处理重定向和混合内容问题。
- 代码法:在
.htaccess
文件中添加规则:RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
四、修复混合内容问题
- 手动替换链接
- 在数据库中使用SQL语句批量替换旧HTTP链接为HTTPS:
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://', 'https://');
- 检查主题和插件的代码,确保资源(图片、CSS、JS)使用相对路径或HTTPS链接。
- 自动修复插件
- 使用“Really Simple SSL”或“Force HTTPS”插件自动转换混合内容。
五、验证与维护
- 检查SSL有效性
- 使用在线工具(如SSL Labs测试)验证证书是否生效及配置安全性。
- 证书续期
- Let’s Encrypt证书默认有效期为90天,需设置自动续期(部分主机商已内置此功能)。
注意事项
- Cloudflare SSL的局限性:Flexible SSL仅加密用户到CDN的流量,服务器到CDN仍为HTTP,适用于非敏感数据网站。
- 浏览器兼容性:部分旧版浏览器可能不支持SNI技术,需根据用户群体选择证书类型。
- 备份:修改数据库或配置文件前务必备份,避免操作失误导致网站故障。
通过以上步骤,WordPress网站可快速部署免费SSL证书,实现HTTPS访问。若需更高级的安全功能(如EV证书),可考虑付费方案。