简体   繁体   English

如何从源代码安装Nginx ;:出现SSL_OP_MSIE_SSLV2_RSA_PADDING错误

[英]How to install nginx from source;: Got SSL_OP_MSIE_SSLV2_RSA_PADDING error

When I try to install nginx/rtmp using many tutorials (Debian) I got 当我尝试使用许多教程(Debian)安装nginx / rtmp时,我得到了

I followed: http://www.leaseweblabs.com/2013/11/streaming-video-demand-nginx-rtmp-module/ and http://blog.hemp-society.de/2013/08/nginx-rtmp-installation.html 我跟随: http : //www.leaseweblabs.com/2013/11/streaming-video-demand-nginx-rtmp-module/http://blog.hemp-society.de/2013/08/nginx-rtmp- installation.html

and all got me the same error: 所有人都给了我同样的错误:

I tried with these 2 configurations: 我尝试了以下两种配置:

./configure --add-module=/root/nginx/nginx-rtmp-module/ --with-http_ssl_module --prefix=/usr/local/nginx-streaming/ ./configure --add-module = / root / nginx / nginx-rtmp-module / --with-http_ssl_module --prefix = / usr / local / nginx-streaming /

./configure --add-module=../nginx-rtmp-module-master

~/nginx/nginx-1.4.3# make 〜/ nginx / nginx-1.4.3#make

make -f objs/Makefile make[1]: entrant dans le répertoire « /root/nginx/nginx-1.4.3 » cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I/root/nginx/nginx-rtmp-module/ -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs \\ -o objs/src/event/ngx_event_openssl.o \\ src/event/ngx_event_openssl.c src/event/ngx_event_openssl.c: In function ngx_ssl_create: src/event/ngx_event_openssl.c:189:5: error: âSSL_OP_MSIE_SSLV2_RSA_PADDINGâ undeclared (first use in this function) src/event/ngx_event_openssl.c:189:5: note: each undeclared identifier is reported only once for each function it appears in make[1]: * [objs/src/event/ngx_event_openssl.o] Erreur 1 make[1]: quittant le répertoire « /root/nginx/nginx-1.4.3 » make: * [build] Erreur 2 make -f objs / Makefile make [1]:进入dans lerépertoire«/root/nginx/nginx-1.4.3»cc -c -pipe -O -W -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I / root / nginx / nginx-rtmp-module / -I src / core -I src / event -I src / event / modules -I src / os / unix -I objs \\ -o objs / src / event /ngx_event_openssl.o \\ src / event / ngx_event_openssl.c src / event / ngx_event_openssl.c:在ngx_ssl_create函数中:src / event / ngx_event_openssl.c:189:5:错误:âSSL_OP_MSIE_SSL/ EventV函数未使用此RSA_PAD /ngx_event_openssl.c:189:5:注意:每个未声明的标识符对于在make [1]中出现的每个函数仅报告一次: * [objs / src / event / ngx_event_openssl.o] Erreur 1 make [1]:退出曲目«/root/nginx/nginx-1.4.3»make:* [build] Erreur 2

It looks like the problem is openssl. 看来问题是openssl。

 make install

make -f objs/Makefile install make[1]: entrant dans le répertoire « /root/nginx/nginx-1.4.3 » cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I/root/nginx/nginx-rtmp-module/ -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs \\ -o objs/src/event/ngx_event_openssl.o \\ src/event/ngx_event_openssl.c src/event/ngx_event_openssl.c: In function ângx_ssl_createâ: src/event/ngx_event_openssl.c:189:5: error: âSSL_OP_MSIE_SSLV2_RSA_PADDINGâ undeclared (first use in this function) src/event/ngx_event_openssl.c:189:5: note: each undeclared identifier is reported only once for each function it appears in make[1]: * [objs/src/event/ngx_event_openssl.o] Erreur 1 make[1]: quittant le répertoire « /root/nginx/nginx-1.4.3 » make: * [install] Erreur 2 make -f objs / Makefile install make [1]:进入dans lerépertoire«/root/nginx/nginx-1.4.3»cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-未使用参数-Werror -g -I / root / nginx / nginx-rtmp-module / -I src / core -I src / event -I src / event / modules -I src / os / unix -I objs \\ -o objs / src / event / ngx_event_openssl.o \\ src / event / ngx_event_openssl.c src / event / ngx_event_openssl.c:在功能ângx_ssl_createâ中:src / event / ngx_event_openssl.c:189:5:错误:âSSL_DING_IE函数)src / event / ngx_event_openssl.c:189:5:注意:每个未声明的标识符对于在make [1]中出现的每个函数仅报告一次: * [objs / src / event / ngx_event_openssl.o] Erreur 1 make [ 1]:退出勒索曲目 [/root/nginx/nginx-1.4.3] make:* [install] Erreur 2

can someone help me with that ? 有人可以帮我吗?

can someone help me with that ? 有人可以帮我吗?

Do you have openssl-dev installed? 您是否安装了openssl-dev On Debian and friends, you need to install libssl-dev . 在Debian和朋友上,您需要安装libssl-dev On Fedora and friends, you need to install openssl-devel . 在Fedora和好友上,您需要安装openssl-devel

Or are you using OpenSSL located in a non-standard directory? 还是正在使用非标准目录中的OpenSSL?

In both cases you need to configure with --with-http_ssl_module . 在这两种情况下,都需要使用--with-http_ssl_module进行配置。

In case OpenSSL is in a non-standard location, you also need to supply the paths to the OpenSSL headers with -I using nginx's --with-cc-opt ; 如果OpenSSL位于非标准位置,则还需要使用nginx的--with-cc-opt使用-I OpenSSL标头的路径。 and the libraries with -L and -l using nginx's --with-ld-opt . 以及带有-L-l的库,以及使用nginx的--with-ld-opt

See the project's Building nginx from Sources . 请参阅Sources中项目的Building nginx


Edit : Also see See OpenSSL Bug 3208: Planned removal of SSL_OP_MSIE_SSLV2_RSA_PADDING breaks dependent software if you are using OpenSSL 1.0.2 or higher. 编辑 :另请参见查看OpenSSL错误3208:如果您使用的是OpenSSL 1.0.2或更高版本,则计划删除SSL_OP_MSIE_SSLV2_RSA_PADDING会破坏相关软件

If using OpenSSL 1.0.2 or higher, you might try adding the following in ngx_event_openssl.c : 如果使用OpenSSL 1.0.2或更高版本,则可以尝试在ngx_event_openssl.c添加以下ngx_event_openssl.c

#ifndef SSL_OP_MSIE_SSLV2_RSA_PADDING
# define SSL_OP_MSIE_SSLV2_RSA_PADDING 0
#endif

In essence, it turns the define into a no-op. 本质上,它将定义变为无操作。

Also see nginx Bug 462 : OpenSSL Safari Workaround (SSL_OP_SAFARI_ECDHE_ECDSA_BUG) . 另请参见nginx错误462OpenSSL Safari解决方法(SSL_OP_SAFARI_ECDHE_ECDSA_BUG) It tries to work around an Apple SecureTransport bug. 它试图解决Apple SecureTransport错误。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM