http://192.168.0.179でサーバーを実行しています。これは、 192.168.0.179:5000 へのソケット接続を試行するフラッシュ ファイル WebSocketMain.swf ( https://github.com/gimite/web-socket-jsから) を提供します。また、ソケット ポリシー ファイル サーバーを 192.168.0.179:843 で実行しています。
これは、サーバーが実行されているマシン (OS X を実行している) で正常に機能します。そのマシンで、Flash はポリシー ファイル サーバーに接続し、次に WebSocket サーバーにポート 5000 で接続します。および IE9/Chrome の両方で)、JS コンソールに次のエラー メッセージが表示されます。
ログ: [WebSocket] デバッグが有効になっています
ログ: [WebSocket] ポリシー ファイル: xmlsocket://192.168.0.179:843
[WebSocket] ws://192.168.0.179:5000/websockettest で Web ソケット サーバーに接続できません (SecurityError: エラー #2048: セキュリティ サンドボックス違反:
http://192.168.0.179/assets/flash/WebSocketMain.swf
192.168.0.179:5000 からデータを読み込めません。) サーバーが実行されていることを確認し、 Flash ソケット ポリシー ファイルが正しく配置されているログ: [WebSocket] が閉じられました
tcpdump とサーバー マシンのポリシー サーバー ログによると、Flash Player は 192.168.0.179 のポリシー サーバーに接続すらしていません。192.168.0.179:843 は .175 マシンから開いているため、FP がそれに接続するのに問題はないはずです。.175 マシンからターミナル クライアント (PuTTY など) を介して接続し、ポリシー ファイルを問題なく受信できます。Windowsファイアウォールも無効にしましたが、効果はありませんでした。
WebSocketMain.swf を変更して Security.loadPolicyFile() を明示的に呼び出し、まったく呼び出さないようにしましたが、効果はありませんでした。また、コードに Security.allowDomain("*") を追加しようとしました。まだ何もありません。FP が接続する URL (Web サーバーによって提供される) を 192.168.0.179:80 に変更してみました。何もない。192.168.0.179:10000 も機能しません。127.0.0.1 と localhost でさえ機能せず、同じエラー メッセージが表示されます
これを引き起こしている可能性があるのは何ですか?FP がポリシー サーバーに接続しようとさえしないのはなぜですか?