http://socketo.me/docs/hello-worldに示されているとおり、ラチェット php を使用して非常に基本的な websocket チュートリアルを試しました。
Websocket サーバーのコード:
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
require 'vendor/autoload.php';
require 'chat.php';
use Ratchet\Server\IoServer;
use HHWS\Chat;
$server = IoServer::factory(
new Chat(),
8080
);
$server->run();
サーバーを実行するには、次のことを行いました。
$ php ws-server.php
そして、サーバーとの接続をテストするために、次のことを行いました。
telnet 127.0.0.1 8080
ローカルでテストしたところ、これは完全に正常に機能しました。ユーザーは、複数の telnet 端末を使用してチャットできます。
次に、コードをライブサーバーにアップロードしました。そして、サーバーを実行してみました。次に、以前と同じようにtelnetを使用してこのサーバーに接続しようとしましたが、接続できませんでした。表示されるのは「Trying ..」メッセージと「 Unable to connect to remote host: Connection timed out」というメッセージだけです。
なぜこれが起こっているのか、何が問題なのかはわかりません。コードはまったく同じです。そして、これは私がやっている非常に基本的な Hello World の例です。誰でもこれについて私を助けることができますか?「Websockets」を使用するには、ライブサーバーが機能するための他の要件があります。
更新: 実際には、ライブ サーバーはAmazon EC2です。これには、websocket が機能するために追加の設定が必要ですか?