在成功利用swoole_websocket_server 開啟websocket服務之後,遇到一個問題,大多數web都是https的,特別是涉及到安全性比較高,設計互聯網金融、數位貨幣的時候,https都是必須的。這時候,因為安全問題,ws://連線會被禁止。
安裝swoole的openssl支援。 中上(建議學習: swoole視訊教學)
重新編譯安裝swoole#s#11able-opens#web#webcnet-open ssl取代ws
服務端,比較上次程式碼,做出以下變更即可
%PHP_BIN%/phpize cd swoole_src ./configure --enable-openssl make && make install客戶端,將連線換成wss即可
//初始化类的时候,加上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' ) );
以上是swoole 能設定憑證嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!