编译安装 nginx 时,默认使用系统自带的 OpenSSL 库,但其一般很老,不支持如 SDPY 等新功能。--with-openssl
参数虽然可以指定 OpenSSL 路径,但只支持 OpenSSL 的源代码,不支持已编译好的 OpenSSL。每回更新 nginx 都要重新编译 OpenSSL 肯定很麻烦,网上找到一个方案,觉得很好,记录下来。
修改 auto/lib/openssl/conf
大约第 31 行至 35 行,把:
CORE_INCS
=
"$CORE_INCS $OPENSSL/.openssl/include"
CORE_DEPS
=
"$CORE_DEPS $OPENSSL/.openssl/include/openssl/ssl.h"
CORE_LIBS
=
"$CORE_LIBS $OPENSSL/.openssl/lib/libssl.a"
CORE_LIBS
=
"$CORE_LIBS $OPENSSL/.openssl/lib/libcrypto.a"
修改为:
CORE_INCS
=
"$CORE_INCS $OPENSSL/include"
CORE_DEPS
=
"$CORE_DEPS $OPENSSL/include/openssl/ssl.h"
CORE_LIBS
=
"$CORE_LIBS $OPENSSL/lib/libssl.a"
CORE_LIBS
=
"$CORE_LIBS $OPENSSL/lib/libcrypto.a"
--with-openssl=/usr/local/openssl
。
引用:https://www.sinosky.org/compile-nginx-with-a-custom-openssl-library.html