WordPress 驱动着 43% 的网站。添加 SSL/HTTPS 需要三个步骤:获取证书、安装到服务器、更新 WordPress 使用 HTTPS URL。本指南涵盖所有三个步骤。
第一步:获取证书
大多数 WordPress 主机包含免费 SSL——先检查:
| 主机类型 | 如何检查 |
|---|---|
| 托管 WordPress(SiteGround、Bluehost、WP Engine) | 控制面板 → 安全/SSL 部分——通常自动启用 |
| cPanel 共享主机 | cPanel → SSL/TLS Status — 查看 AutoSSL |
| VPS/独立服务器 | 无内置 SSL — 需要自己安装 |
如果你的主机不提供 SSL,从 GetHTTPS 获取免费证书并通过 cPanel、Nginx 或 Apache 安装。
第二步:更新 WordPress URL
证书安装到服务器后,告诉 WordPress 使用 HTTPS:
方法 A:WordPress 设置(最简单)
- 前往 设置 → 常规
- 将两个 URL 从
http://改为https://:- WordPress 地址 (URL):
https://yourdomain.com - 站点地址 (URL):
https://yourdomain.com
- WordPress 地址 (URL):
- 点击 保存更改
你会被登出——用新的 https:// URL 重新登录。
方法 B:wp-config.php(如果你无法访问仪表板)
在 /* That's all, stop editing! */ 之前添加:
define('WP_HOME', 'https://yourdomain.com');
define('WP_SITEURL', 'https://yourdomain.com');
define('FORCE_SSL_ADMIN', true);
第三步:修复混合内容
WordPress 在数据库中存储绝对 URL(文章内容、图片、小工具文本)。切换到 HTTPS 后,旧的 http:// 引用会导致混合内容警告。
快速修复:Really Simple SSL 插件
- 安装 Really Simple SSL 插件
- 激活它——它会检测你的证书并自动修复大部分混合内容
- 它添加
upgrade-insecure-requests头并动态改写 URL
永久修复:数据库搜索替换
无需插件依赖的干净方案:
# Using WP-CLI (recommended)
wp search-replace 'http://yourdomain.com' 'https://yourdomain.com' --all-tables
或使用 Better Search Replace 插件:
- 搜索:
http://yourdomain.com - 替换为:
https://yourdomain.com - 选择所有表
- 运行(先做干运行)
手动 SQL(高级)
UPDATE wp_options SET option_value = REPLACE(option_value, 'http://yourdomain.com', 'https://yourdomain.com') WHERE option_name IN ('home', 'siteurl');
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://yourdomain.com', 'https://yourdomain.com');
UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'http://yourdomain.com', 'https://yourdomain.com');
第四步:设置 HTTP → HTTPS 重定向
确保所有访客都使用 HTTPS,即使他们输入 http://:
.htaccess(Apache — WordPress 最常见)
在 .htaccess 文件顶部添加(在 WordPress 规则之前):
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Nginx
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
return 301 https://$host$request_uri;
}
参见完整的重定向指南。
第五步:更新外部服务
迁移到 HTTPS 后,在以下位置更新你的 URL:
- Google Search Console — 添加
https://资源 - Google Analytics — 设置 → 默认 URL → 改为
https:// - 站点地图 — 用
https://URL 重新生成(Yoast/Rank Math 会自动处理) - 社交资料 — Facebook、Twitter 到你网站的链接
- CDN — 如果使用 CDN,确保它通过 HTTPS 提供服务
验证
- 访问
https://yourdomain.com— 应该出现锁头图标 - 打开 DevTools(F12)→ Console — 检查混合内容警告
- 测试几个内部页面和博客文章
- 检查 Google Search Console 中的抓取错误
故障排查
启用 HTTPS 后重定向循环
在代理后面(Cloudflare、负载均衡器)时常见。代理向 WordPress 发送 HTTP,WordPress 重定向到 HTTPS,代理又以 HTTP 发送。修复:
// Add to wp-config.php if behind a proxy
if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https') {
$_SERVER['HTTPS'] = 'on';
}
安装 SSL 后显示”您的连接不是私密连接”
证书可能在服务器级别没有正确安装。在排查 WordPress 问题之前,先检查服务器配置(Nginx 或 Apache)。
某些图片/资源仍通过 HTTP 加载
运行数据库搜索替换(第三步)。检查主题文件和自定义 CSS 中硬编码的 http:// URL。使用 upgrade-insecure-requests CSP 头作为安全网。
常见问题
WordPress 需要插件来配置 SSL 吗?
不需要。Really Simple SSL 等插件让过渡更容易(特别是混合内容),但不是必需的。你可以手动更新 URL 并在 .htaccess 中添加重定向。插件在每次页面加载时有少量开销。
切换到 HTTPS 会影响 SEO 吗?
暂时可能有轻微的排名波动,因为 Google 重新抓取你的网站。长期来看,HTTPS 改善 SEO——它是 Google 的排名信号。使用从 HTTP 到 HTTPS 的 301 重定向以便链接权重转移。
可以在 WordPress 上使用免费的 Let’s Encrypt 证书吗?
可以。Let’s Encrypt 证书适用于任何网站,包括 WordPress。从 GetHTTPS 获取一个并安装到服务器或通过 cPanel。证书不知道也不在乎后面运行的是 WordPress。
如何为 WordPress 续签证书?
证书安装在服务器级别,不在 WordPress 中。通过获取新证书并替换服务器上的文件来续签它。WordPress 本身不管理证书。
WooCommerce / WordPress 电商怎么处理?
免费的 Let’s Encrypt DV 证书对 WooCommerce 来说足够了。PCI DSS 不要求 OV 或 EV 证书——它要求加密,DV 就能提供。你的支付网关(Stripe、PayPal、Square)无论如何都会处理最敏感的支付卡数据。
WordPress 多站点可以用 SSL 吗?
可以。对于使用子域名的 WordPress 多站点(如 site1.example.com、site2.example.com),使用通配符证书(*.example.com)。对于使用子目录的多站点(如 example.com/site1/),单个域名证书就可以。
我的主机说他们提供免费 SSL — 还需要 GetHTTPS 吗?
如果你的主机提供免费 SSL(通过 AutoSSL 或类似系统),使用它——这是最简单的路径。GetHTTPS 适用于主机不提供免费 SSL、你需要特定证书类型(通配符、多域名)或你想自己控制私钥的情况。