WordPress网站Nginx服务器SSL证书配置指南

来自:素雅营销研究院

头像 方知笔记
2025年05月08日 12:51

前言

在当今互联网环境中,网站安全性至关重要。为WordPress网站配置SSL证书不仅能保护用户数据安全,还能提升搜索引擎排名。本文将详细介绍如何在Nginx服务器上为WordPress网站配置SSL证书。

准备工作

  1. 已安装WordPress的Nginx服务器环境
  2. 已注册的域名并指向服务器IP
  3. 获取SSL证书(可从Let’s Encrypt、阿里云、腾讯云等获取)

证书获取方式

使用Let’s Encrypt免费证书

  1. 安装Certbot工具:
sudo apt-get install certbot python3-certbot-nginx
  1. 获取证书:
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
  1. 证书会自动配置到Nginx,并设置自动续期

商业SSL证书安装

如果您购买了商业SSL证书,通常会获得以下文件:

  • 域名证书(.crt或.pem文件)
  • 证书链文件(CA证书)
  • 私钥文件(.key文件)

将这些文件上传到服务器安全目录,如/etc/nginx/ssl/

Nginx配置SSL证书

基础配置

编辑Nginx配置文件(通常在/etc/nginx/sites-available/yourdomain.conf):

server {
listen 443 ssl;
server_name yourdomain.com www.yourdomain.com;

ssl_certificate /etc/nginx/ssl/yourdomain.crt;
ssl_certificate_key /etc/nginx/ssl/yourdomain.key;
ssl_trusted_certificate /etc/nginx/ssl/ca.crt;

# SSL协议配置
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256...";

# 其他WordPress配置
root /var/www/wordpress;
index index.php index.html index.htm;

location / {
try_files $uri $uri/ /index.php?$args;
}

location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
}

HTTP重定向到HTTPS

添加以下server块强制所有HTTP请求跳转到HTTPS:

server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
return 301 https://$server_name$request_uri;
}

WordPress配置调整

  1. 登录WordPress后台
  2. 进入”设置”→”常规”
  3. 将”WordPress地址(URL)“和”网站地址(URL)“中的http改为https
  4. 保存更改

解决混合内容问题

安装”Really Simple SSL”插件,它可以自动处理大部分混合内容问题。

证书自动续期(Let’s Encrypt)

测试续期命令:

sudo certbot renew --dry-run

设置自动续期(通常Certbot已自动配置):

sudo certbot renew --quiet --no-self-upgrade --post-hook "systemctl reload nginx"

安全加固建议

  1. 启用HSTS(在Nginx配置中添加):
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
  1. 使用更安全的加密套件
  2. 定期更新服务器和WordPress核心
  3. 监控证书到期时间

常见问题解决

  1. 证书不信任:确保安装了完整的证书链
  2. 混合内容警告:使用插件或手动替换资源URL为https
  3. 重定向循环:检查WordPress设置和Nginx配置
  4. 性能问题:启用OCSP Stapling提升SSL握手速度

结语

通过以上步骤,您的WordPress网站现在应该已经安全地运行在HTTPS下了。定期检查证书状态和服务器安全配置,可以确保网站长期稳定安全地运行。