在编译安装openresty时,总是报各种编译错误:其中SSL、STX、openssl等关键字提示信息。
因为 Debian9 的 OpenSSL 版本是 1.1.0 而 OpenResty 1.11 版本还不支持 1.1.0 所以继续使用 OpenSSL 1.0.2.
首先查看当前openssl版本:
openssl version -a
有两种策略,一卸载目前版本,安装较低版本的openssl。另一策略直接下载1.0.2源码包,在编译openresty包时指定openssl源码包路径。这里采用第二种方案:
https://www.openssl.org/source/源码包地址,可以直接下载。也可以通过wwget命令来下载:
wget --no-check-certificate https://www.openssl.org/source/openssl-1.0.2l.tar.gz
其中--no-check-certificate为了针对下面可以出现验证问题:
下载完成后,解压:
tar -xvf openssl-1.0.2l.tar.gz
进入下载的openresty目录进行配置configure即可,完成操作。
./configure --prefix=/opt/work --with-http_realip_module --with-pcre --with-luajit --add-module=./bundle/ngx_cache_purge-2.3/ --add-module=./bundle/nginx_upstream_check_module-0.3.0/ -j2 --with-openssl=/opt/work/openssl-1.0.2l。