2013-07-07 41 views
17

これは複雑であり、必ずしも1つの質問ではありません。私は可能な助けを感謝します。Websocketの合併症

サーバーアクセスなしでWebソケットを使用することは可能ですが、どのように表示されているかはわかりません。私も仕事にWebSocketをを取得する方法を把握しようと、過去数時間のために苦労してきた

  1. :私は、次の二つのことに基づいて(私はこれを必要と信じている)その結論に来ています私は自分のマシンにWAMPサーバーを持っています。私はrootアクセス権を持っています。コンポーザをインストールしましたが、ラチェットをインストールするためのcomposer.pharファイルのインストール方法を理解することはできません。他のPHP websocket実装を試してみましたが(PHPであることが好ましい)、まだ動作させることができません。

  2. 現在テストしているウェブホストは無料のホストで、SSHアクセスは許可されていません。だから、たとえルートアクセスでウェブソケットを取得することができたとしても、それはホストになると駄目です。

私も(もちろん、限定されたすべてのもの)グーグルで無料のVPSのホストを見つけましたが、完全なルートアクセス権を持っていますが、私はより多くの帯域幅を可能にする何かを維持することを好むと思いました(私の自由なホストは現在、無制限です) 。そして、私はあなたがHTTPサーバーとは異なるサブドメイン上にwebsocketサーバーをホストできる(そしてそうするべきである)こと、そしてそれが全く別のドメインでも実行できることを読んだことがあります。

最終的に私自身のサイトをホストする方が安くなるかもしれませんが、実際にはそれについての手掛かりはありませんが、その場合はマシン上でWebSocketを稼働させる方法を理解する必要があります。

誰かが私に何を尋ねているのか理解できれば、ここでいくつか質問しても、ルートアクセスなしでWebソケットを使用することは可能ですか? composer.pharファイル(私はラチェットコードを含むcomposer.jsonを持っていますが、それが正しいディレクトリにあるかどうかはわかりません)を調べることができない場合、ラチェットWebSocketを正しくインストールするにはどうしたらいいですか?この質問は最初の質問が本当に可能です。 VPS上にWebSocketサーバを持ち、HTTPサーバをまったく別のドメインに置くことは可能でしょうか?そうであれば、どこにでもドキュメンテーションがありますか?

もちろん、AJAXを使用してブラウザに強制的にJSファイルをリロードし、jQuery ajaxを使用して何か変更があったかどうかに関係なく一連のdivを更新することができますそれは複雑になる可能性がありますが、私はそれが可能かどうかもわかりません(私はなぜそうではないのかは分かりません)。しかし、私は彼らがもっと空腹が少ないと聞いて以来、このパラグラフのいくつかの並べ替えがあります。

+1

私が理解する限り、websocket画像には2つの側面があります。サーバー(PHP)とクライアント(ブラウザのjavascript)。サーバ上でphpを実行できるのであれば、あなたのサーバに[ratchet](http://socketo.me)を使用させ、websocketサービスを提供できるはずです。クライアント側はsocket.ioのようなものを使うことができます – Loopo

+2

[heroku ](http://heroku.com)for socket.ioそれはあなたが必要とするものにほとんどアクセスするためのかなり素晴らしいコマンドラインを持っています、私はそこに私のソケットプロジェクトをホストしました、そしてそれは魅力のように働く、herokuが助けてくれたら教えてください。試してみる!それは無料で、おそらくあなたはそのCLIに頼ることができます。 –

+0

https://pusher.com/のようなものがありますか? – jornare

答えて

-1

OK ...あなたはいくつかの質問があるので、私はそれらを一つずつ答えようとします。使用するにはどのような

1.

あなたはSocket.IOを使用することができます。 JavaScriptに基づくリアルタイムWebアプリケーションを開発するためのライブラリ。これは、クライアント側(訪問者ブラウザ上で実行)とサーバー側の2つの部分で構成されています。基本的な使い方では、Node.jsに関する背景知識はほとんど必要ありません。 Here is an example公式Socket.IOウェブサイトの簡単なチャットアプリのチュートリアル。ホスティングプロバイダのほとんどは/ように異なるのApacheプラグインをアクティブにしてインストールするcapebilityでコントロールパネル(cPanelのを)持っている

ホスティング

2。まず、Node.jsがまだ利用可能でないかどうかを確認してください。そうでない場合は、サポートに連絡して、オプションを含めるかどうか尋ねることができます。

あなたの現在のホスティングプロバイダに不運がある場合は、そこに良いお得な情報がたくさんあるので、いつもホストをすぐに切り替えることができます。 Googleは間違いなくここであなたを助けます。 Here is a listには、(多分)最良のオプションがいくつか含まれています。いくつかのホスティング契約が支払われるかもしれませんが、そこから選択する低コストのオプションがたくさんあることを覚えておいてください。

3.帯域幅

あなたは、「リソース空腹」のコードを心配していると多分あなたはAmazon CloudFront上のコンテンツの一部をホスティングしてみてください。これは広く使われているコンテンツ配信ネットワークで、ファイルがクライアントサーバーに最も近い場所からロードされるため、迅速な接続と高速なリソースのロードを保証します。最も重要なのは、実際に使用しているものに対してのみ料金を支払うことです。そのトラフィックがあまりない場合は、実行するには本当に安くて信頼性が高いでしょう。

・ホープこのことができます;バニラLAMP(すなわち、mod_phpをApacheの下)の下で実行されている)

6

プレーンなPHPファイルは、WebSocketの接続を処理することはできません。少なくともApache経由では、実際にリアルタイム通信を行うのではなく、プロトコルのアップグレードを実行することはできません。理論的には、WebSocketリクエストを処理するためにTCPサーバを実行するPHPファイルに対して、非常に長時間実行されているWebリクエストがあるかもしれませんが、これは実用的ではなく、共有ホストが実際にPHPにそれを許可するかどうかは疑問です。

PHPでWebSocketホスティングを可能にする共有ホストがあるかもしれませんが、SSH /シェルアクセスやPHP以外の方法でWebサーバーの外部に実行することはできません。 PHPファイルをアップロードするためのディレクトリをApacheに提供しているだけなら、あなたは不運です。

Composerのおかげで、シェルアクセスなしでcomposer.pharを共有ホスト上で実行できるかどうかはわかりません。一部のホスト(例:Heroku)は、Composerを特定のサポートしています。

まったく別のドメインでWebSocketサーバーを稼働させることについては、実際に行うことができます。 JavaScriptをポイントしてそのドメインに接続し、WebSocketサーバーが必要なクロスソースリソース共有ヘッダーを提供していることを確認してください。

関連する問題