ホームページ  >  記事  >  PHPフレームワーク  >  Oppo が swoole に接続できない場合はどうすればよいですか?

Oppo が swoole に接続できない場合はどうすればよいですか?

藏色散人
藏色散人オリジナル
2020-04-09 09:53:072267ブラウズ

Oppo が swoole に接続できない場合はどうすればよいですか?

接続できませんswooleどうすればよいですか? Websocket は swoole で有効になっている https サーバーに接続できませんか?

スウールでの https 接続の問題

少し前に、友人が WebSocket による HTTPS への接続の問題について PHP ブロガーに相談しました。オンライン情報は非常に乱雑だったので、ブロガー自身も試してみたので、いくつかの質問と技術的な概要を共有します。

サーバーは PHP 拡張 Swoole フレームワークを使用して開発され、クライアントは JS の WebSocket を使用して開発されます。

HTTPS ソリューションは次のとおりです:

1. swoole をコンパイルしてインストールするときに、openssl のサポートを選択することを忘れないでください。

cd swoole_srcphpize ./configure --enable-openssl make && make install
2.如果遇到报错configure: error: Cannot find php-config. Please use --with-php-config=PATH

解決策: php-config パス

./configure --with-php-config=/usr/local/php/bin/php-config --enable-openssl

3 を手動で追加します。最後に、証明書情報を swoole コードに追加します:

//初始化类的时候,加上openssl参数
$serv = new swoole_websocket_server(":", 8080, SWOOLE_PROCESS, SWOOLE_SOCK_TCP | SWOOLE_SSL);
//配置证书文件位置
$key_dir = "YOUR_KEY_DIR";
$serv->set(array( 'work_num'=>1, 'ssl_cert_file'=>$key_dir.'/file.crt','ssl_key_file'=>$key_dir.'file.key'));

4。クライアント接続:

var wsl = "wss://domain/path";//证书的域名 ws = new WebSocket(wsl);

クライアントが接続するときに、必ず ws を wss に変更してください。

以上がOppo が swoole に接続できない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。