NGINX反向代理响应IP但不响应域名

NGINX反向代理响应IP但不响应域名

我设置了一个 nginx 反向代理来指向我的 nodejs 应用程序。当我在搜索栏中输入服务器 IP 时,网站会按预期显示。当我输入域名时,我收到 ERR_CONNECTION_REFUSED 错误。

我的网站有以下可用文件:

server {
    listen   80 default_server;
    listen [::]:80;

    server_name mywebsite.com www.mywebsite.com <server_ip>;

    location / {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $host;
            proxy_set_header X-NginX-Proxy true;
            proxy_pass http://0.0.0.0:3000/;
            #proxy_redirect http://127.0.0.1:3000/ https://$server_name/;
    }
}

我还注释掉了default文件中的所有内容以避免冲突。

我的端口应该打开ufw

$ sudo ufw status
Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
Nginx Full                 ALLOW       Anywhere
443                        ALLOW       Anywhere
22                         ALLOW       Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
Nginx Full (v6)            ALLOW       Anywhere (v6)
443 (v6)                   ALLOW       Anywhere (v6)
22 (v6)                    ALLOW       Anywhere (v6)

当我对我的域名进行 ping 时,它会返回正确的 IP 地址。

这是输出netstat -tlnp

sudo netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:3000            0.0.0.0:*               LISTEN      21671/PM2 v5.3.0: G
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      18646/sshd: /usr/sb
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      26697/nginx: master
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      18657/systemd-resol
tcp6       0      0 :::22                   :::*                    LISTEN      18646/sshd: /usr/sb
tcp6       0      0 :::80                   :::*                    LISTEN      26697/nginx: master

答案1

当我在搜索栏中输入服务器 IP 时,网站按预期显示。当我输入域名时,我收到 ERR_CONNECTION_REFUSED 错误。

那么首先要检查的是客户端上的域名解析。尝试固定域名。

(这也证明很多其他因素不是导致问题的原因,包括防火墙)

相关内容