2

サイトの大部分を開発した後、サーバーからクライアントにデータをプッシュする機能を導入する必要がありました。いくつかの調査の後、Ratchet を使用することにしました (Laravel 4.1 を使用しています)。

pushUpdate クラスを実装しましたが、webSocket サーバーの起動に問題があります。サーバーを起動する現在の方法は次のとおりです。

    // Run the server application through the WebSocket protocol on port 8080
    $app = new Ratchet\App('localhost', 8080);
    $app->route('/update', new pushUpdate);
    $app->route('/echo', new Ratchet\Server\EchoServer, array('*'));
    $app->run();

このコードは、プッシュ更新が必要なページが要求されたときに実行されます。これは私が受け取るエラーです:

   React \ Socket \ ConnectionException
   Could not bind to tcp://127.0.0.1:8080: Address already in use

以前に webSocket を実装したことがありません。サーバー構成ドキュメント ( http://socketo.me/docs/deploy#serverconfiguration ) を読んで、ポート 8080 で Web サーバーとソケット サーバーの両方を実行できると述べています。

これを解決するための助けをいただければ幸いです。

4

1 に答える 1

4

すでにポート 8080 を使用しているプロセスがあるようです。「netstat -ap」を使用して、どのプロセスが 8080 を使用しているかを確認することで、それが事実であるかどうかを確認できます。

于 2014-03-20T17:58:23.783 に答える