Socket.io-client无法加载资源

时间:2017-03-02 17:58:28

标签: websocket socket.io

我有这个问题尝试使用socket.io-client连接到websocket(Socket.IO.js build:0.9.16)

Failed to load resource: the server responded with a status of 404 (Not Found)
XMLHttpRequest cannot load https://myserver.it/socket.io/1/?t=1488475368547. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://my_vps_ip' is therefore not allowed access. The response had HTTP status code 404.
奇怪的是:

  • localhost工作正常
  • 在亚马逊ec2实例中它工作正常
  • 在另一个vps(云vps bought here)中它不起作用

这是我的代码:

socket = io.connect('https://myserver.it' ,{
        transports: ['websocket'],
        secure: true,
        'force new connection' : false,
        'reconnect' : true,
    });

Apache 2.4.18两次VPS,相同配置,相同模块

我真的不明白......

2 个答案:

答案 0 :(得分:0)

看起来您遇到了CORS问题。您需要确保明确允许访问所请求的资源。

您可能需要查看enable-cors.org以前的指导。

答案 1 :(得分:0)

我不知道如果有这个帮助,但我很久以前就遇到过同样的问题。

检查您的网址,确保其不以/

结尾

e.g。 https://myserver.it/!= https://myserver.it