简体   繁体   中英

Can't connect to remote PHP WebSocket server (Wrench) : ERR_CONNECTION_REFUSED

I'm trying to connect to a WebSocket server (PHP / Wrench) running on my webserver.

The configuration of the server looks like this:

$server = new \Wrench\Server("wss://localhost:8443");
 $server->registerApplication('app',
   new \Wrench\Application\EchoApplication()); 
$server->run();

I'm using port 8443 because I can't use 80 or 443 (Permission denied). The domain uses HTTPS so I have to use the wss: protocol.

I have no problem connecting to the PHP server when I run the script on my local machine (I just have to replace wss: by ws: ).

When I run the server via SSH on my remote webserver, it seems to run correctly, but trying to connect to it via JS with the following call doesn't work:

var ws = new WebSocket("wss://dev.mydomain.net:8443/app");

I get an " Error in connection establishment: net::ERR_CONNECTION_REFUSED ."

On my webserver panel control, the 8443 port (TCP) is open (in and out). When the PHP server is running, the command netstat -a | grep 8443 netstat -a | grep 8443 gives the following output, which I think should confirm it's open:

tcp        0      0 localhost:8443          *:*                     LISTEN

Is there an obvious detail I'm missing here?

I finally found a solution: instead of setting the URI of the server to localhost , I had to use 0.0.0.0 . Now it works perfectly when I'm using HTTP (there's another problem when using HTTPS, but at least I have more information at this point).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM