0

カスタム チャットに websocket を使用するプロジェクトを開始したいと考えています。もちろん、私はすでに単純な PHP + MySQL サーバーを持っており、これから始めたいと思います。だから私はこれを見つけました: https://github.com/Flynsarmy/PHPWebSocket-Chat

php の上で websocket サーバーを実行します。私のローカル (Mac) マシンでは、既に実行されています。しかし、サーバー上でこのスクリプトを開始する方法がわかりません。シェルへのアクセス権がないためですか?

これは私が使用しているサーバーです: http://www.1blu.de/webhosting/homepagepakete/power/

助けてくれてありがとう!

フェリックス

4

2 に答える 2

1

シェルアクセスが必要になります。ホスティングサービスに連絡して、シェルアクセスを提供しているかどうかを尋ねます(ただし、許可されているようには見えないか、おそらく前もって言っているでしょう)。そうでない場合は、新しいサービスを見つける必要があります。

于 2013-02-21T09:31:01.983 に答える
0

WebSocket は、カスタム プロトコルを使用して、最初の HTTP 準拠の接続を全二重ソケットに変換するプロトコルです。

これには 2 つの方法があります。オプション 1 は、Apache などの標準の HTTP サーバーを使用して、最初の HTTP 接続を受け入れることです。その後、この HTTP サーバーの Websocket サポートを使用して、ビジネス コードから Websocket にアップグレードできます。これは、Tomcat や JBoss などのサーバーで行われることです。

オプション 2 は、独自のサーバー ソケットを開き、基本的に PHP 内から独自の HTTP サーバーを作成することです。HTTP の非常に制限されたサブセットを自分で実装し、すべての接続を WebSocket にアップグレードしようとします。これは、PHPWebsocket ライブラリが行うことです。

オプション 1 は PHP と互換性がありません。すべての Web サーバーは PHP を使用して HTML コンテンツを生成します。現在、Websocket への現在の HTTP 接続のアップグレードをサポートしている Web サーバーはありません。

オプション 2 は、GoDaddy や 1Blu などのホスティング プロバイダーと互換性がありません。意味がありません: 独自の Web サーバーを実装しようとしていますが、それらのマシンでは既に Web サーバーが実行されています!

簡単に言うと、ネイティブの WebSocket サポートが Apache に存在しない限り、制御を PHP に転送できるということです。問題を攻撃するさまざまな方法については、websockets Apache サーバーの互換性を参照してください。

于 2013-02-21T09:34:27.700 に答える