代码之家  ›  专栏  ›  技术社区  ›  skyline

不知何故,使用Nginx时无法显示内容

  •  0
  • skyline  · 技术社区  · 1 年前

    我的2个web服务的Nginx-conf文件如下:

      server {
         listen 80;
         listen 1000;
         server_name 192.168.1.150;
         return 301 https://for_stackoverflow.net$request_uri;
      }
    
      server {
      listen 2000;
      server_name 192.168.1.150;
      return 301 https://for_stackoverflow.net/forms$request_uri;
      }
    
      server {
         listen 443 ssl;
         server_name for_stackoverflow.net;
         ssl_certificate     /etc/nginx/ssl/certs/for_stackoverflow.crt;
         ssl_certificate_key /etc/nginx/ssl/private/for_stackoverflow.key;
         ssl_session_timeout 5m;
         ssl_session_cache shared:SSL:50m;
         ssl_session_tickets off;
         ssl_protocols TLSv1.2 TLSv1.3;
         ssl_ciphers 'TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384';
         ssl_prefer_server_ciphers   on;
         add_header Strict-Transport-Security "max-age=31536000" always;
    
         ### A PyWebIO web service ###
         location / {
            proxy_pass http://127.0.0.1:3000/; 
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_set_header X-Forwarded-Host $host;
            proxy_set_header X-Forwarded-Server $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Photo $scheme;
            proxy_set_header HOST $host;
            proxy_set_header X-Real-IP $remote_addr;
         }
         
         ### A Streamlit web service ###
         location /form {
            proxy_pass http://127.0.0.1:4000/;
            alias /home/streamlit_app/;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_set_header X-Forwarded-Host $host;
            proxy_set_header X-Forwarded-Server $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Photo $scheme;
            proxy_set_header HOST $host;
            proxy_set_header X-Real-IP $remote_addr;
         }
      }
    

    我是否访问 http://192.168.1.150 https://192.168.1.150 ,页面将指向https://for_stackoverflow.net这种行为是正确的。

    然而,当我访问时 http://192.168.1.150/form ,Streamlight网站无法正确显示页面,并提示警告消息“连接错误0”,似乎找不到文件。

    web服务似乎使用了Websocket。 如何解决此问题?非常感谢。

    0 回复  |  直到 1 年前