0

Node.jsをバックエンドサーバーとして使用して、フロントエンドのsocket.ioリクエストを処理したいと思います。

私が見つけたサンプルは、Node.jsサーバーからのページしか実行できないようです。

<script src="/socket.io/socket.io.js"></script>

上記のjsインクルードはNode.jsによって提供されますが、フロントエンドが別のアプリケーション(PHPや静的ページなど)の場合、どのようにインクルードするのですか?それを機能させるには、依存するすべてのsocket.io jsライブラリを含める必要がありますか?

4

2 に答える 2

2

私は現在、node.js/socket.ioと一緒にapache/phpを実行しています。これがあなたがやろうとしていることである場合、apacheが提供しているものとは異なるポートでsocket.ioを提供することによってそれを行うことができます(80と仮定) 。

node.jsで、ポート8080でsocket.ioリスナーを初期化します。次に例を示します。

var io = require('socket.io').listen(8080);

デフォルトでは、socket.ioは静的なクライアント側ファイルも便利に提供すると思います。たとえば、htmlでは次のことができます。

<script src="http://yourhost:8080/socket.io/socket.io.js"></script>

お役に立てば幸いです。

于 2012-10-30T07:46:10.383 に答える
0

それはすべてサーバー構成によって異なります。他のリソースで使用されていないNode.jsバックエンドへのパスを選択し、他のすべてにサービスを提供するようにWebサーバーを構成できます。

たとえば、Apacheの場合、ProxyPassディレクティブを使用して、別のポートでローカルNode.jsへの接続を有効にしました(ローカルポートの制限をバイパスするため)。ただし、目的に応じたオプションではない場合があります。

ProxyPass /help/server/ http://localhost:8002/ connectiontimeout=1500ms
于 2012-10-30T07:20:38.100 に答える