nginx 使用HTTPS协议-SSL证书模块报错解决-附nginx安装 : [emerg] the "ssl" parameter requires ngx_http_ssl_module in nginx.c
Linux系统下ngnix使用HTTPS协议启动报错:
nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.c
报错原因:
未安装SSL模块--ngx_http_ssl_module
解决方法:
1.先查看nginx原有的模块: /usr/local/nginx/sbin/nginx -V (或./nginx -V)在configure arguments:后面显示的参数如下:--prefix=/usr/local/nginx --with-http_stub_status_module ,则代表未安装SSL模块
2.那么安装好的参数应该是这样:

3.接下来输入命令:
yum -y install openssl openssl-devel (非必须)
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module 运行命令即可,
4.等配置完成后,运行命令: make 这里不要进行make install,否则就是覆盖安装
5.然后备份原有已安装好的nginx: cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
6.然后将刚刚编译好的nginx覆盖掉原有的nginx(这个时候nginx要停止状态): cp ./objs/nginx /usr/local/nginx/sbin/ 然后启动nginx,仍可以通过命令查看是否已经加入成功 /usr/local/nginx/sbin/nginx -V
最后附上完整安装nginx方法:
1.安装nginx前,我们首先要确保系统安装了g++、gcc、openssl-devel、pcre-devel和zlib-devel软件,
yum install gcc-c++
yum -y install zlib zlib-devel pcre pcre-devel
yum -y install openssl openssl-devel
2.切换到需要安装nginx的目录,我这里在/usr/local/ ,然后下载nginx: wget https://nginx.org/download/nginx-1.11.3.tar.gz
## 如果已安装nginx,则remove掉 yum remove nginx
3.解压下载好的nginx包:tar -zxvf nginx-1.11.3.tar.gz
4.开始安装:/usr/local/nginx-1.11.3 --是nginx的解压后的源码包
执行安装: ./configure --prefix=/usr/local/nginx
安装https认证模块(上文未安装这个导致使用https协议保存):./configure --with-http_ssl_module
再执行:make
最后执行:make install
查看安装成功:

进入安装后的包 :

最后进入sbin/nginx目录,./nginx启动即可
5.配置nginx https代理请求:
server {
server_name yuming.cn; ##需要代理的域名
listen 443 ssl;
ssl on; ##如果安装的是新版本下不需要
ssl_certificate certPath/cert.pem; ##SSL证书地址
ssl_certificate_key certPath/cert.key;##SSL证书公钥
ssl_session_timeout 3m;##超时时间
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://120.xx.xx.xx:9006; ##这里写需要转发的项目地址
}
}
nginx 使用HTTPS协议-SSL证书模块报错解决-附nginx安装 : [emerg] the "ssl" parameter requires ngx_http_ssl_module in nginx.c的更多相关文章
- 使用PHPMailer 中的报错解决 "Connection failed. Error #2: stream_socket_client(): SSL operation failed with code 1. OpenSSL Error messages:"
PHPMailer项目地址:https://github.com/PHPMailer/PHPMailer 项目中用到PHPMailer,使用过程中报错:"Connection failed. ...
- cmd命令中运行pytest命令导入模块报错解决方法
报错截图 ImportError while loading conftest 'E:\python\HuaFansApi\test_case\conftest.py'. test_case\conf ...
- pip 安装模块报错解决
系统版本 ubuntu Kylin 16.04 LTS 报错1:安装pip3 安装 Django 总是提示time out,无法安装. 改用国内源: 豆瓣源: sudo pip3 install - ...
- idea 创建 springboot 模块报错-解决
1.报错截图 2.解决 把 https://start.spring.io 换成 阿里镜像的即可 https://start.aliyun.com/
- Git - could not read Username for 'https://github.com',push报错解决办法
执行git push命令异常,如下: git -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=sou ...
- LayuiAdmin退出模块报错解决
将layuiAdmin/src/controller目录下的common.js中 logout方法的url中logout.js的路径修改为自己目录的路径: 我这里修改为绝对路径:
- XmlDocument.Load(url) url是https远程时,报错" 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。" "根据验证过程,远程证书无效。"
XmlDocument.Load(url) url是https远程时,报错" 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系." "根据验证过程, ...
- pycharm安装 suds模块报错:AttributeError: module 'pip' has no attribute 'main'
需求:安装suds模块 遇到的问题: 一.报错信息:[file][Default Settint]---Project Interpreter 点击 搜索suds安装模块报错 解决:依据上图提示找到C ...
- python pip安装模块报错 "Can't connect to HTTPS URL because the SSL module is not available."
在升级python版本为3.6之后,pip安装模块报错. 报错信息如图: 原因是系统自带的openssl版本与python3的版本不匹配,所以这里只要升级openssl版本就可以解决问题. yum - ...
随机推荐
- 提升布局性能____Making ListView Scrolling Smooth
listview是一个比较重要的UI组件,一切影响UI的操作,比如适配器从磁盘.网络或者数据库中加载数据的操作,最好都放在子线程中完成.子线程可以使用thread,不过那样比较老土,官方推荐使用Asy ...
- 跟着大彬读源码 - Redis 5 - 对象和数据类型(上)
相信很多人应该都知道 Redis 有五种数据类型:字符串.列表.哈希.集合和有序集合.但这五种数据类型是什么含义?Redis 的数据又是怎样存储的?今天我们一起来认识下 Redis 这五种数据结构的含 ...
- Java中的单例模式(Singleton Pattern in Java)
Introduction 对于系统中的某个类来说,只有一个实例是很重要的,比如只有一个timer和ID Producer.又比如在服务器程序中,配置信息保留在一个文件中,这些配置信息由一个单例对象统一 ...
- python虚拟环境管理 Pipenv 使用说明
安装 pip install pipenv 检查是否安装成功 pipenv --version 创建虚拟环境(在工程文件夹下) pipenv install 默认下,Pipenv统一管理所有虚拟环境 ...
- RabbitMQ 实践之在处理异步任务中的流程
一.背景: 我司的系统,用户可以创建任务,启动任务,但任务的运行需要很长的时间,所以采用消息队列的方式,后台异步处理. 这里所用到的是 RabbitMQ . 二.MQ 处理任务的流程 ① ② ③ ④ ...
- Java之JDBC 通过加载properties配置文件连接数据库
通常情况下,我们通过JDBC连接数据库的时候,不会将数据库相关配置写死,因为到时候数据库一有改动,就要重新打包部署到服务器或者替换相关的.class文件,这样非常不灵活.因此,咱们一般会通过读取配置文 ...
- java练习---13
public class Y { public static void main(String[] args) { // TODO Auto-generated method stub new Y() ...
- 2015.11.10 asn1学习笔记
Openssl : OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法.常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用. 在OpenSSL被曝出现严 ...
- springMVC保存数据到mysql数据库中文乱码问题解决方法
1.web.xml中添加过滤器 <filter> <filter-name>CharacterEncodingFilter</filter-name> <fi ...
- spark 源码分析之二十一 -- Task的执行流程
引言 在上两篇文章 spark 源码分析之十九 -- DAG的生成和Stage的划分 和 spark 源码分析之二十 -- Stage的提交 中剖析了Spark的DAG的生成,Stage的划分以及St ...