最近使用 Hyperf 的時(shí)候,在使用 CURL 請求外部的 https 鏈接回報(bào)這樣的錯(cuò)誤:
you must configure with --enable-openssl to support ssl connection when ……
它提示我必須配置 --enable-openssl ,雖然我知道這句話的文字意思,但是并不知道具體怎么操作才能進(jìn)行配置,因?yàn)槲也⒉恢浪木唧w執(zhí)行步驟或使用流程。經(jīng)過昨天的相關(guān)搜索和驗(yàn)證,弄清了這個(gè)東西應(yīng)該怎么去配。
安裝 openssl
查看是否安裝 openssl
openssl
未安裝的時(shí)候使用命令安裝:
sudo apt install openssl
獲取 openssl 的安裝位置
一般來說默認(rèn)位置是 /usr/bin/openssl
重新編譯 Swoole
首先要知道 php 安裝擴(kuò)展的時(shí)候,分為手動編譯 phpize 和命令 pecl 安裝。
1、PECL 方式
# 超級管理運(yùn)行
su
# 使用 pecl 更新 swoole 擴(kuò)展
pecl upgrade swoole
# 上面命令會進(jìn)行編譯安裝 swoole 擴(kuò)展,耐心等待!在等待的過程中千萬不要按回車鍵,因?yàn)樗麜舆t到下一步的執(zhí)行,會錯(cuò)過詢問的操作確認(rèn)!
# 知道等待詢問語句在 enable openssl support? [no] : 輸入
yes --with-openssl-dir=/usr/local/openssl
# 以上的 /usr/local/openssl 就是你的 openssl 安裝位置,進(jìn)行修改即可
2、PHPIZE 方式
這里可以參考 安裝Swoole
# 超級管理運(yùn)行
su
# 下載安裝 swoole
git clone https://gitee.com/swoole/swoole.git
# 切換到 swoole 目錄
cd swoole
# ubuntu 沒有安裝 phpize 可執(zhí)行命令:sudo apt-get install php-dev 來安裝 phpize
phpize
# 配置 openssl
./configure --enable-openssl --with-openssl-dir=/usr/bin/openssl
# 安裝
make && sudo make install
解釋
這里的錯(cuò)誤屬于安裝編譯 swoole 的步驟,涉及到的知識
- Linux 的源碼安裝流程,
./configure和make的使用 - PHP 安裝擴(kuò)展,Windows 的
dll安裝,Linux 的PECL和phpzie安裝;swoole 不支持 Windows 平臺。