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

Node.js应用可通过IP端口访问 但Nginx反向代理域名访问返回默认页

Nginx反向代理返回默认页面修复方案

根因说明

请求未匹配到api.domain.com对应的自定义server块,被Nginx转发到优先级更高的默认80服务块,因此返回默认测试页。

修复步骤

  • 补全反向代理配置的监听端口
    编辑/etc/nginx/conf.d/api1.conf,根据访问场景补充配置:

场景1:HTTP访问

在server块内新增listen 80;配置,完整示例如下:

server {
    listen 80;
    server_name api.domain.com;

    location / {
        proxy_pass http://localhost:26423/all;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

场景2:HTTPS访问(使用已申请的Let's Encrypt证书)

替换原有配置为以下内容,注意替换为实际的证书路径:

# HTTP自动跳转HTTPS
server {
    listen 80;
    server_name api.domain.com;
    return 301 https://$server_name$request_uri;
}

# HTTPS反向代理配置
server {
    listen 443 ssl;
    server_name api.domain.com;
    
    ssl_certificate /etc/letsencrypt/live/api.domain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/api.domain.com/privkey.pem;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    location / {
        proxy_pass http://localhost:26423/all;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        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;
        proxy_cache_bypass $http_upgrade;
    }
}
  • 验证配置合法性
    执行命令:nginx -t,返回test is successful即代表配置语法无误。
  • 重载Nginx配置生效
    执行命令:systemctl reload nginx
  • 排查残留问题
    若修改后仍返回默认页,先确认域名解析指向当前服务器公网IP,再清理浏览器缓存后重试,也可通过curl -v http://api.domain.com命令查看请求的实际走向定位问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 08:36:02