IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> nginx报错:the “ssl“ parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:128 -> 正文阅读

[网络协议]nginx报错:the “ssl“ parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:128

前情回放:

我一个前端被发配到客户那里当运维,我只想安安静静的敲代码怎么就这么难呢(我太难了。。。)。

言归正传,遇到客户要求把http换成https,客户这边是生产环境。没有办法随便搞,只能把自己的域名换成https了,经过2天的努力啃骨头,终于搞定了,为了避免忘记,遇到了几个个问题,特此记录一下。

准备工作:

1一台服务器(我的是腾讯服务器),一个域名(我的是阿里申请的域名),服务器打开443端口(我2020年买的服务器是默认打开的)

2ssl证书从阿里云下载免费的ssl证书并放到了服务器中

我是放到了服务器的这个目录下:/usr/local/nginx/conf/cert/

一、重启出现错误:unknown directive "ssl" in /usr/local/nginx/conf/nginx.conf:116

根据网上搜出来的步骤?

1、安装ssl模块
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
2、编译
make
3、备份
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
4、替换
cp ./objs/nginx /usr/local/nginx/sbin/

这安装完成后出现另一个报错

二、错误信息:

28184#0: BIO_new_file("/usr/local/nginx/conf/cert/6484311_wen.pem") failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/usr/local/nginx/conf/cert/6484311_wen.pem','r') error:2006D080:BIO routines:BIO_new_file:no such file)

这个错误是因为证书路径放错地方了。

接下来继续重启nginx:./sbin/nginx -s reload

三、出现如下错误信息,现在这个错误和第一个错误是一样,但是nginx能启动起来了,但是这条信息是出现在nginx错误日志里的,用https还是不能访问

?[emerg] 25302#0: unknown directive "ssl" in /usr/local/nginx/conf/nginx.conf:116

经过折腾良久好了,我的步骤可能有多余的,因为是菜鸡所以我都列出来了

?1、首先确认自己服务器中的nginx目录

①nginx的安装目录是/usr/local/nginx这个目录,
②源码包在/usr/local/src/nginx-1.9.9目录

查询自己niginx的版本命令:在nginx目录下输入:./sbin/nginx -V

出现如下信息:

[root@VM-0-13-centos nginx]# ./sbin/nginx -V
nginx version: nginx/1.9.9
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

2、因为我手欠,把②源码包给删除了,所以我又重新下载了一个,步骤如下:

// 1、如果是使用yum 安装等方式,找不到源码包,需要下载当前安装相同版本的源码包:
// 2、在usr/local/src下执行如下命令下载找到自己相同的版本

wget http://nginx.org/download/nginx-1.9.9.tar.gz

// 3、解压到当前目录中

tar  -zxvf nginx-1.9.9.tar.gz

3、使用命令:安装ssl模块

 ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

4、使用命令编译输入:

make

5、 备份原来nginx配置文件

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

6、保证nginx是关闭状态

nginx -s stop

在我自己尝试当中忘记了执行这一步,以至于ssl已经安装在nginx中,但是还是无法配置https成功!!!

!老铁们引以为戒

7、复制刚编译生成的配置覆盖原有的配置

cp ./objs/nginx /usr/local/nginx/sbin/

?8、启动nginx,在①nginx的安装目录是/usr/local/nginx这个目录执行命令

./sbin/nginx

大功告成!启动成功日志中也没有报错了,访问https网站也成功了,下面附上我的nginx的配置

server {
    listen       443 ssl;
    server_name abc.cn;
    ssl_certificate       cert/wenabc.pem;
    ssl_certificate_key   cert/wenabc.key;
	ssl_session_timeout 5m;
    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;
    location / {
        root /home/;
    	index  index.html index.htm;
    }
}

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-10-27 13:09:19  更:2021-10-27 13:09:25 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 4:41:04-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码