PHP Websocket on Webserver

◇◆丶佛笑我妖孽 提交于 2019-12-19 18:55:11

问题


A few days ago I setup this WebSocket server from http://code.google.com/p/phpwebsocket/

It works excellent on my localhost by using Xampp. Then, I uploaded it to my webspace on Strato, but now I am not able to connect to the server.

I changed the the sockets connection to my domain but it didn`t work

Client.html:

var host = "ws://xxxxxxxx.com:12345/Websocket/server.php";

Server.php:

$master  = WebSocket("xxxxxx",12345);

I already tried it with different port(80,443,12345,8080,8000....), using the IP address in server.php instead of the domain.

I also used absolute and relative paths in the client.html.

From the projects page http://code.google.com/p/phpwebsocket/ someone suggested to use 0 or 0.0.0.0 in the server.php, but that didn`t work either.

In the client.html it just shows:

WebSocket - status 0 Disconnected - status 3

My guess that the problem is that Strato is blocks me from using WebSockets. Is it possible to run WebSockets on my webspace?


回答1:


My bet is that your host is blocking incoming requests to the socket. Your not supposed to run scripts like phpwebsocket within a web service (it is a server itself). This confuses a lot of people since PHP is typically used for scripting webpages, not for coding daemons.

I say this because you mentioned running the script within Xampp, and referred to your hosting service as 'webspace'.

If this is the case you will have to upgrade to a virtual server package so that you can run your own services.




回答2:


Okay, to bring this to an end.

I found a solution to use my websockets app and I´ve got an explanation why it did not work on my shared hosting solution.

I contacted Strato who told me that they don`t allow Websocket on shared hosting. The only way to get a similiar result would be to use AJAX Long Pooling.

Now I purchased to a Virtual Server and my websocket app works great now.

Thanks for your support.



来源:https://stackoverflow.com/questions/13778056/php-websocket-on-webserver

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!