Acceda al sitio web de nginx con "502 Bad Gateway"

Acceda al sitio web de nginx con "502 Bad Gateway"

Creé un sitio web con asp.net core y antes funcionaba bien en IIS.

Ahora lo modifico a centos8 con Nginx.

El proyecto funciona bien en centos8 por URLhttp://0.0.0.0:5001

Nginx se utiliza para un servidor proxy inverso. Sin embargo, después de acceder al sitio web a través de la computadora local, aparece 502 Bad Gatewayun error.

Aquí están los registros de entrada error.log:

2020/01/24 08:47:47 [notice] 1#1: using the "epoll" event method
2020/01/24 08:47:47 [notice] 1#1: nginx/1.17.7
2020/01/24 08:47:47 [notice] 1#1: built by gcc 8.3.0 (Debian 8.3.0-6) 
2020/01/24 08:47:47 [notice] 1#1: OS: Linux 4.18.0-147.3.1.el8_1.x86_64
2020/01/24 08:47:47 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
2020/01/24 08:47:47 [notice] 1#1: start worker processes
2020/01/24 08:47:47 [notice] 1#1: start worker process 6
2020/01/24 08:47:49 [error] 6#6: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 113.109.81.57, server: www.sealribbon.com, request: "GET / HTTP/1.1", upstream: "http://0.0.0.0:5001/", host: "www.sealribbon.com"
2020/01/24 08:47:50 [error] 6#6: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 113.109.81.57, server: www.sample.com, request: "GET /favicon.ico HTTP/1.1", upstream: "http://0.0.0.0:5001/favicon.ico", host: "www.sealribbon.com", referrer: "https://www.sample.com/"
2020/01/24 08:47:59 [info] 6#6: *1 client 113.109.81.57 closed keepalive connection
2020/01/24 08:47:59 [info] 6#6: *2 client closed connection while waiting for request, client: 113.109.81.57, server: 0.0.0.0:443

Y aquí está mi nginx.conf:

user root;
worker_processes  1;
error_log  /var/log/nginx/error.log  info;
worker_rlimit_nofile 1024;
events {
    worker_connections  1024;
}
http {
    proxy_http_version 1.1;
    proxy_connect_timeout 600;
    proxy_read_timeout 600;
    proxy_send_timeout 600;
    client_max_body_size 50m;
    include       mime.types;
    default_type  application/octet-stream;
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log  /var/log/nginx/access.log  main;
    keepalive_timeout  65;
    gzip on;
    sendfile on;
    gzip_buffers 16 8k;
    gzip_comp_level 2;
    gzip_http_version 1.1;
    gzip_min_length 256;
    gzip_proxied any;
    gzip_vary on;
    gzip_types
        text/xml application/xml application/atom+xml application/rss+xml application/xhtml+xml image/svg+xml
        text/javascript application/javascript application/x-javascript
        text/x-json application/json application/x-web-app-manifest+json
        text/css text/plain text/x-component
        font/opentype font/ttf application/x-font-ttf application/vnd.ms-fontobject
        image/x-icon image/jpeg image/gif image/png;
    map $http_upgrade $connection_upgrade {
        default upgrade;
        ''      close;
    }    
upstream backend {
    server 0.0.0.0;
}
    server {
        listen       80;
        server_name  www.sample.com *.sample.com;
        return       301 https://$server_name$request_uri;
    }
    server {
        listen                    443 ssl;
        server_name               www.sample.com *.sample.com;
        ssl_certificate           /etc/nginx/cert/3390293_sample.com.pem;
        ssl_certificate_key       /etc/nginx/cert/3390293_sample.com.key;
        ssl_ciphers               ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols             TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        ssl_session_timeout       5m;
        location / {
            proxy_pass http://0.0.0.0:5001;
            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_redirect off;
            index index.html;
        }
    }
}

Parece que hay tantos problemas similares mientras buscaba en Google.

Alguien dijo que debería usar elsetsebool -P httpd_can_network_connect 1

Lo intenté, pero el problema sigue aquí.

Soy sólo un principiante. Por favor dime ¿cómo puedo solucionarlo? Gracias.

Respuesta1

0.0.0.0no es una dirección IP válida. ingrese la dirección correcta de su servidor backend.

Respuesta2

Gracias por la ayuda de @Gerald Schneider.

Modifico estos dos códigos: backend ascendente {servidor 172.18.92.125:5001; }

contraseña_proxyhttp://172.18.92.125:5001;

Y finalmente, funciona.

información relacionada