Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Nginx将/socket.io请求转发到代理节点服务器_Node.js_Nginx_Amazon Ec2_Proxy_Socket.io - Fatal编程技术网

Node.js Nginx将/socket.io请求转发到代理节点服务器

Node.js Nginx将/socket.io请求转发到代理节点服务器,node.js,nginx,amazon-ec2,proxy,socket.io,Node.js,Nginx,Amazon Ec2,Proxy,Socket.io,我正在尝试将所有/socket.io请求转发到/broadcaster。这是我的nginx配置: server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; access_log /home/ubuntu/logs/broadcaster/access.log; error_log /home/ubuntu/logs/broadcast

我正在尝试将所有
/socket.io
请求转发到
/broadcaster
。这是我的nginx配置:

server {
        listen 80 default_server;
        listen [::]:80 default_server ipv6only=on;

        access_log /home/ubuntu/logs/broadcaster/access.log;
        error_log /home/ubuntu/logs/broadcaster/error.log;
        root /usr/share/nginx/html;
        index index.html index.htm;

        # Make site accessible from http://localhost/
        server_name localhost;

        # Enable WS
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_redirect off;

        location /broadcaster {
                rewrite  ^/broadcaster/(.*)  /$1 break;
                proxy_pass http://127.0.0.1:1337;
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                # Uncomment to enable naxsi on this location
                # include /etc/nginx/naxsi.rules
        }
        # simply forward socket.io requests.
        # only one site can run socket.io on this server now
        location /socket.io {
                proxy_pass http://127.0.0.1:1337;
        #       proxy_set_header Upgrade $http_upgrade;
        #       proxy_set_header Connection $connection_upgrade;
        }

}
当I(socket.io)发出像
GET这样的请求时http://my-ec2-public-dns/socket.io/1/?t=1408981904508
我收到错误
400(错误请求)


nginx如何转发
/socket.io
请求?

您好!你解决这个问题了吗?我正在经历非常相似的一个,并希望得到任何提示。这里是我的问题:我不知道具体的修复方法是什么,但我现在有了一个域名,我的nginx配置正在为子域执行代理传递,它可以正常工作。对不起,我帮不了你。没问题,谢谢你抽出时间。