插件窝 干货文章 Linux Nginx下SSL证书安装及WordPress CDN怎么配置

Linux Nginx下SSL证书安装及WordPress CDN怎么配置

yourdomain Nginx 配置 CDN 177    来源:    2025-04-26

在Linux Nginx环境下配置SSL证书并为WordPress设置CDN是一个提升网站安全性和性能的重要步骤。以下是详细的操作流程:


一、SSL证书安装(以Let's Encrypt为例)

1. 安装Certbot工具

# Ubuntu/Debian
sudo apt update
sudo apt install certbot python3-certbot-nginx

# CentOS/RHEL
sudo yum install epel-release
sudo yum install certbot python3-certbot-nginx

2. 获取SSL证书

sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
  • 按照提示输入邮箱、同意服务条款。
  • 选择是否重定向HTTP到HTTPS(推荐选择2强制跳转)。

3. 验证证书自动续期

sudo certbot renew --dry-run

4. 手动验证Nginx配置

检查/etc/nginx/sites-available/yourdomain.com,确保包含类似配置:

server {
    listen 443 ssl;
    server_name yourdomain.com www.yourdomain.com;
    ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
    # 其他配置...
}

二、WordPress CDN配置(以Cloudflare为例)

1. 注册并配置Cloudflare

  1. Cloudflare官网添加站点,按提示修改DNS解析服务器。
  2. 在Cloudflare控制台启用SSL:
    • SSL/TLS模式:选择"Full"(严格模式需上传证书)。
    • Always Use HTTPS:开启。

2. 配置WordPress使用CDN

方法1:使用插件(推荐)
  1. 安装插件(如 CDN EnablerWP Super Cache)。
  2. 填写CDN域名(如cdn.yourdomain.com或Cloudflare提供的CNAME)。
方法2:手动修改wp-config.php
define('WP_HOME', 'https://yourdomain.com');
define('WP_SITEURL', 'https://yourdomain.com');
方法3:替换静态资源URL

在Nginx配置中添加规则:

location ~* \.(jpg|jpeg|png|gif|css|js|woff2)$ {
    expires 365d;
    add_header Cache-Control "public";
    proxy_pass https://cdn.yourdomain.com;
}

3. 验证CDN生效

  1. 访问网站,检查静态资源URL是否变为CDN域名(如cdn.yourdomain.com/wp-content/...)。
  2. 使用工具(如WebPageTest)确认资源加载来源。

三、高级优化(可选)

  1. HSTS增强安全
    在Nginx中添加:

    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload";
    
  2. OCSP Stapling
    在Nginx的SSL配置中添加:

    ssl_stapling on;
    ssl_stapling_verify on;
    resolver 8.8.8.8 1.1.1.1 valid=300s;
    
  3. CDN缓存规则
    在Cloudflare的"Page Rules"中设置缓存策略(如缓存HTML、忽略动态路径)。


常见问题排查

  1. SSL证书不生效

    • 检查Nginx错误日志:sudo tail -f /var/log/nginx/error.log
    • 确认443端口开放:sudo ufw allow 443/tcp
  2. CDN资源不加载

    • 检查CDN域名是否已解析到正确IP。
    • 清除WordPress和CDN缓存。
  3. 混合内容警告

    • 使用插件(如 Really Simple SSL)自动替换HTTP链接。

通过以上步骤,你的WordPress站点将具备HTTPS安全和CDN加速能力。如需其他CDN服务(如AWS CloudFront、BunnyCDN),配置逻辑类似,只需替换对应的CDN提供商信息即可。