Nginx添加openssl模块编译时报错问题

如题所示,报错信息如下:

/bin/sh: line 2: ./config: No such file or directory
make[1]: *** [/usr/local/ssl/.openssl/include/openssl/ssl.h] Error 127
make[1]: Leaving directory `/usr/local/src/nginx-1.9.9‘
make: *** [build] Error 2

需要说明的是,我这里编译所使用的Nginx源码是1.9.9的。根据报错信息我们知道,出错是因为Nginx在编译时并不能在/usr/local/ssl/.openssl/ 这个目录找到对应的文件,其实我们打开/usr/local/ssl/这个目录可以发现这个目录下是没有.openssl目录的,因此我们修改Nginx编译时对openssl的路径选择就可以解决这个问题了

解决方案:

打开nginx源文件下的/usr/local/src/nginx-1.9.9/auto/lib/openssl/conf文件:

找到这么一段代码:

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_LIBS="$CORE_LIBS $NGX_LIBDL"

修改成以下代码:

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"
CORE_LIBS="$CORE_LIBS $NGX_LIBDL"

然后再进行Nginx的编译安装即可

参考文章:http://blog.chinaunix.net/uid-2274226-id-5756596.html

时间: 2024-10-16 18:05:28

Nginx添加openssl模块编译时报错问题的相关文章

解决Nginx添加openssl模块编译时报错问题

如题所示,报错信息如下: /bin/sh: line 2: ./config: No such file or directory make[1]: *** [/usr/local/ssl/.openssl/include/openssl/ssl.h] Error 127 make[1]: Leaving directory `/usr/local/src/nginx-1.9.9' make: *** [build] Error 2 需要说明的是,我这里编译所使用的Nginx源码是1.9.9的.

Nginx SPDY Pagespeed模块编译——加速网站载入

在看<Web性能权威指南>的时候,看到了SPDY这货,于是便开始折腾起了这个了,也顺便把pagespeed加了进去. Nginx SPDY 引自百科~~ SPDY(读作“SPeeDY”)是Google开发的基于TCP的应用层协议,用以最小化网络延迟,提升网络速度,优化用户的网络使用体验.SPDY并不是一种用于替代HTTP的协议,而是对HTTP协议的增强.新协议的功能包括数据流的多路复用.请求优先级以及HTTP报头压缩.谷歌表示,引入SPDY协议后,在实验室测试中页面加载速度比原先快64%. 在

apache源码编译时报错ssl_engine_init.c:546: error: &#39;STACK&#39; undeclared (first use in this function)

操作系统:centos6.4 X86_64 apache版本:httpd-2.2.6 openssl版本:openssl-1.0.1e 源码编译apache时报如下错误: ssl_engine_init.c: In function 'ssl_init_ctx_protocol': ssl_engine_init.c:390: warning: assignment discards qualifiers from pointer target type ssl_engine_init.c:39

Maven项目编译时报错缺少tools.jar

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project ERP: Compilation failure [ERROR] Unable to locate the Javac Compiler in: [ERROR] C:\Program Files\Java\jre7\..\lib\tools.jar [ERR

Sass for循环中编译%时报错解决方案

sass功能强大,特别是支持for循环,节省大量开发时间,但是在开发时遇到一个问题,直接使用%时没有问题,当有变量时再加% 单位在编译时报错: 这样没有问题: @for $width from 0 to 10{ .wp#{$width}{ width:$width px; } } 但是这样就有问题了: @for $width from 0 to 10{ .wp#{$width}{ width:$width%; } } 或者这样: @for $width from 0 to 10{ .wp#{$w

给已经编译安装了的nginx 添加http_ssl_module模块

环境:centos6.7 因为需要https ,要用到http_ssl_module模块,但http_ssl_module并不属于nginx的基本模块所以自己重新编译添加 1.首先看下内核和系统的版本号. [[email protected] ~]# uname -a Linux zabbix.nnkj.com 2.6.32-573.el6.x86_64 #1 SMP Thu Jul 23 15:44:03 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux [[em

安装nginx并为nginx添加sysguard模块

如果nginx被攻击或者访问量突然变大,nginx会因为负载变高或者内存不够用导致服务器宕机,最终导致站点无法访问.解决方法是利用淘宝开发的模块nginx-http-sysguard,主要用于当负载和内存达到一定的阀值之时,会执行相应的动作,比如直接返回503,504或者其他的.一直等到内存或者负载回到阀值的范围内,站点恢复可用.简单的说,这个模块是让nginx有个缓冲时间. 我使用的操作系统是Ubuntu12.0.4,下面的操作都以该系统为基础. 首先到官网上下载nginx1.12.1.tar

nginx添加sticky模块-cookie保持会话

cookie不同于session,一个存于客户端,一个存于服务端. 环境nginx 1.8.0 centos6.X sticky:1.2.5  wget https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/get/master.tar.gz cookie负载均衡相比iphash来比其中一个特点比较明显:内网nat用户的均衡.而iphash无法做到. yum install openssl openssl-devel 先停止ngin

如何给在用的nginx添加新模块?

有一个在用的nginx,以yum方法安装的,怎样在不改动配置的情况下,为它添加模块. 以添加spdy模块为例. 编译新模块 预编译 ./configure --prefix=/etc/nginx --sbin-path=/usr/sbin --conf-path=/etc/nginx/nginx.conf --pid-path=/run/nginx.pid --error-log-path=/var/log/nginx/error.log --with-http_spdy_module --wi