You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Docker Nginx SSL反向代理配置问题:将t2.l.com指向Ghost容器

解决t2.l.com通过SSL访问Ghost博客的Nginx配置方案

看起来你现在的核心困扰是没法让t2.l.com既通过SSL加密访问(显示绿色安全锁),又正确反向代理到Ghost容器对吧?其实就是Nginx的SSL配置和反向代理的组合逻辑没理顺,我给你一套完整的配置思路和代码示例:

第一步:确认SSL证书路径有效性

首先你已经通过Let's Encrypt拿到了t2.l.com的证书,先确认证书文件路径没问题,通常默认路径是:

  • 证书文件:/etc/letsencrypt/live/t2.l.com/fullchain.pem
  • 私钥文件:/etc/letsencrypt/live/t2.l.com/privkey.pem

这个路径和其他正常域名的配置逻辑一致,不用改动。

第二步:配置完整的Nginx规则(HTTP跳转+HTTPS反向代理)

你需要给t2.l.com单独配置两个server块:一个处理80端口的HTTP请求,强制跳转到HTTPS;另一个处理443端口的HTTPS请求,同时反向代理到Ghost容器。

直接用这份配置代码替换你现有相关的配置段:

# 处理HTTP请求,强制跳转至HTTPS
server {
    listen 80;
    server_name t2.l.com;

    # 把所有HTTP请求301永久重定向到HTTPS
    return 301 https://$server_name$request_uri;
}

# 处理HTTPS请求,反向代理到Ghost容器
server {
    listen 443 ssl http2;
    server_name t2.l.com;

    # 加载Let's Encrypt证书
    ssl_certificate /etc/letsencrypt/live/t2.l.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/t2.l.com/privkey.pem;

    # 可选的SSL安全优化配置(提升加密等级)
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;

    # 核心反向代理配置
    location / {
        # 替换成你docker-compose中Ghost服务的名称(比如ghost)或容器IP
        proxy_pass http://ghost:2368;
        # 必须设置的请求头,确保Ghost识别HTTPS协议
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

第三步:配置后的验证步骤

  1. 检查Nginx配置语法是否正确:
    如果Nginx是运行在容器里,执行docker exec 你的Nginx容器名 nginx -t;如果是宿主机的Nginx,直接执行nginx -t
  2. 重启Nginx生效:
    容器环境用docker-compose restart nginx,宿主机用systemctl restart nginx
  3. 访问https://t2.l.com,应该就能看到带绿色安全锁的Ghost博客了

为什么之前的配置出问题?

你之前只保留proxy_pass时,应该是直接用HTTP访问的t2.l.com,所以没有SSL锁;如果只保留return 301,只会完成跳转但不会代理到Ghost服务。正确的逻辑是拆分两个server块,各司其职:一个负责把HTTP流量强制转成HTTPS,另一个负责处理HTTPS流量并反向代理到Ghost,同时通过X-Forwarded-Proto告诉Ghost当前是HTTPS环境,避免内部跳转或资源加载异常。

内容的提问来源于stack exchange,提问作者alexyichu

火山引擎 最新活动