王海鱼 发表于 2024-12-28 20:12:35

linux安装nginxs报错:openssl not found

系统:
linux 版本:centOS7
nginx版本:nginx-1.20.2
linux安装nginx时 实行下面命令时报错:
./configure --with-http_stub_status_module --with-http_ssl_module --prefix=/usr/local/nginx
checking for OpenSSL library ... not found
checking for OpenSSL library in /usr/local/ ... not found
checking for OpenSSL library in /usr/pkg/ ... not found
checking for OpenSSL library in /opt/local/ ... not found

./configure: error: SSL modules require the OpenSSL library.
You can either do not enable the modules, or install the OpenSSL library
into the system, or build the OpenSSL library statically from the source
with nginx by using --with-openssl=<path> option.
分析:缘故原由是在 ./configure 时加了–with-http_ssl_module 这个必要依赖openssl 但是nginx没有找到
--with-http_ssl_module 是 Nginx 编译时的参数,用于启用 SSL 支持。当启用此模块时,Nginx 将能够处理 HTTPS 请求,并且可以配置为代理其他服务器的 HTTPS 流量。

要在 Nginx 中启用 SSL 支持,你需要在编译 Nginx 时添加 --with-http_ssl_module 参数。这通常意味着你需要重新编译 Nginx,因为 SSL 支持是作为 Nginx 的一个模块来实现的。

如果不需要支持https 不用加此参数
我查抄了一下linux是已经安装了openssl的 这说明nginx里配置的openssl路径和系统里的不是一个地方,我这里的openssl是系统安装时就自带的
#rpm -qa|grep openssl
openssl-libs-1.0.2k-19.el7.x86_64
xmlsec1-openssl-1.2.20-7.el7_4.x86_64
openssl-1.0.2k-19.el7.x86_64
# openssl version
OpenSSL 1.0.2k-fips26 Jan 2017
解决办法:
从官网下载openssl
https://openssl-library.org/source/
我下载的和我linux自带版本划一的openssl-1.0.2k.tar.gz
解压放在linux的/usr/local/src/package目录下(目录随你定 但是后面要用到 保持划一即可)
然后重新实行(记得切换到你解压后的nginx的bin目录实行).
注意./configure和之前比加了--with-openssl=/usr/local/src/package/openssl-1.0.2k
#切换目录
cd /usr/local/src/package/nginx-1.20.2
#和之前比加了--with-openssl=/usr/local/src/package/openssl-1.0.2k
#这个目录对应的是你上面解压的openssl的目录
./configure --with-http_stub_status_module --with-openssl=/usr/local/src/package/openssl-1.0.2k --with-http_ssl_module --prefix=/usr/local/nginx
实行成功
https://i-blog.csdnimg.cn/direct/039ae6d08f944ff48b25728992367819.png
后面再继续你的安装步骤即可
make
make install

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: linux安装nginxs报错:openssl not found