You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nginx无法从HTTP重定向到HTTPS问题求助

Nginx HTTP无法重定向到HTTPS及HTTPS访问异常排查

问题现象

  • 访问HTTP(http://example.xyz / http://www.example.xyz)可正常打开页面,但未自动重定向到HTTPS
  • 手动访问HTTPS时出现异常(截图如下)
    访问HTTP页面
    手动访问HTTPS页面
  • DNS配置:www.example.xyz的CNAME记录指向example.xyz,example.xyz配置了A记录

当前Nginx配置

upstream hype {
    server hype:7171;
}

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


server {
    listen 443 ssl;
    server_name example.xyz www.example.xyz;
    ssl_certificate  /etc/nginx/certs/fullchain.pem;
    ssl_certificate_key  /etc/nginx/certs/privkey.pem;
    
    location / {
        proxy_pass http://hype;
        proxy_http_version 1.1;
        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;
    }

}

排查及解决步骤

  • 验证Nginx配置并重载
    先检查配置语法是否合法:

    nginx -t
    

    若输出test is successful,立即重载Nginx使配置生效:

    systemctl reload nginx
    

    (使用service管理的环境,执行service nginx reload)

  • 检查80端口监听状态
    确认Nginx是否实际监听80端口,避免端口被其他进程占用:

    ss -tulpn | grep nginx
    

    输出需包含:80的监听记录,否则排查占用80端口的进程并停止,或调整Nginx监听端口。

  • 排查HTTPS异常原因

    1. 验证SSL证书覆盖范围:查看证书是否同时包含两个域名:
      openssl x509 -in /etc/nginx/certs/fullchain.pem -text -noout | grep -A 5 "Subject Alternative Name"
      
      确认输出中存在DNS:example.xyz和DNS:www.example.xyz,否则需重新申请覆盖双域名的SSL证书。
    2. 修复证书文件权限:确保Nginx进程能读取证书文件:
      chmod 644 /etc/nginx/certs/fullchain.pem /etc/nginx/certs/privkey.pem
      chown nginx:nginx /etc/nginx/certs/fullchain.pem /etc/nginx/certs/privkey.pem
      
      (用户组根据Nginx实际运行用户调整,常见为www-data)
  • 检查配置冲突
    查看所有生效的Nginx配置,确认没有其他监听80端口的server块覆盖重定向规则:

    nginx -T
    

    搜索listen 80,确保只有当前重定向的server块在监听80端口。

  • 排除浏览器缓存影响
    使用浏览器隐私模式访问HTTP地址,或清除浏览器缓存后测试,避免旧响应缓存导致重定向不触发。

  • 确认DNS解析正确性
    执行命令验证域名解析到的IP是否与服务器实际IP一致:

    nslookup example.xyz
    nslookup www.example.xyz
    

    若解析IP不符,等待DNS生效(通常10-30分钟),或检查DNS配置是否有误。

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 03:26:05