韩槑槑

Swoole 启用 openssl

字数统计: 375阅读时长: 1 min
2019/01/28 Share

为什么要启用 openssl ?

当我使用 SwooleHttp 客户端时,需要访问 HTTPS 的接口,此时报错告诉我没有开启 openssl 扩展。
file

so,通过 pecl 安装的 Swoole 扩展是没有开启 openssl 的。
想知道有没有开启可以通过 php --ri swoole 命令来查看
file

如何开启 openssl ?

首先,需要通过自己手动编译来开启这个扩展。
通过 Swoole 官方文档配置项可知 https://wiki.swoole.com/wiki/page/437.html

Let’s Go

我使用的是 OSX 系统

先下载 releases 版本的 Swoole https://github.com/swoole/swoole-src/releases
根据官方文档的编译示例运行下面的命令(最后大部分人会报错)

1
2
3
4
5
6
7
8
9
// 进入解压完毕的文件夹
cd swoole

phpize

// 启用 openssl 扩展
./configure --enable-openssl

make

运行完毕后大部分朋友都会报以下找不到 openssl 扩展的错误
file

此时通过 brew search openssl 来查看本机是否安装该扩展(没安装的可以自行百度安装方法)。
接着通过 brew --prefix openssl 来查看扩展所在文件夹。
file

接着重新运行命令

1
2
3
./configure --with-openssl-dir={此处填上方获取的openssl路径}
make
make install

--with-openssl-dir 相比于 --enable-openssl 来说可以指定 openssl 扩展的具体位置。
然后再次通过 php --ri swoole 查看是否启用该扩展了。
如果之前通过 pecl 安装过 swoole 扩展的朋友可以不用删除旧的包,手动编译完成后会自动替换。

CATALOG
  1. 1. 为什么要启用 openssl ?
  2. 2. 如何开启 openssl ?
  3. 3. Let’s Go