Nginx安装http2和ssl模块

Nginx安装http2和ssl模块

Nginx在执行默认安装命令的时候,并不会编译启用ngx_http_v2_module模块。故在修改Nginx配置文件启用http2.0协议的时候会报错。

一.检查Nginx安装了哪些模块

shell 复制代码
#进入Nginx的安装目录
cd /usr/local/nginx
#执行命令查看安装了哪些模块
./sbin/nginx -V

如图就是没有安装ngx_http_v2_module模块

二.重新编译Nginx

Nginx有两个目录,一个是安装目录,一个是源码目录,安装目录就是执行安装流程后的目录,一般默认位置是/usr/local/nginx

源码目录就是Nginx安装包解压的目录,也就是执行make和make install的文件目录

进入到nginx源码目录重新编译,通过--with-http_v2_module启用ngx_http_v2_module模块,然后make 。

注意这里不要执行make install,如果执行了install会覆盖之前的安装目录

shell 复制代码
#进入源码目录
cd /home/ngtl/nginx-1.22.0/
#配置编译文件,如果上一步有已经启用的模块则需要包括已启用的模块和ngx_http_v2_module模块
#这里一并安装了其余两个常用的模块,包括ssl和stub_status监视模块
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module

等待执行完毕

shell 复制代码
#然后make编译
make

等待编译完成

编译后的新生成的nginx文件在源码目录的objs目录下,如图所示:

三.替换原有的Nginx文件

shell 复制代码
#备份
cd /usr/local/nginx/sbin
mv nginx nginx.bak
#替换Nginx文件
cp /home/ngtl/nginx-1.22.0/objs/nginx /usr/local/nginx/sbin
ls

然后检查模块是否安装成功

shell 复制代码
cd /usr/local/nginx/sbin
./nginx -V

至此Nginx新增模块就成功了

相关推荐
Ruiery3 小时前
Linux 6.6内核内存管理深度解析(十三):slab/slub 分配器
linux·运维·服务器
Decay__4 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检
运维·数据库·sql·mysql·架构
江华森5 小时前
数据中心基础设施运维实战:概述与实验环境搭建
运维
迪菲赫尔曼6 小时前
【基础篇 11】把官方源码放到服务器:版本、解压层级和安装位置,一次弄清楚
运维·服务器·开发语言·人工智能·python·yolo·目标检测
by209997 小时前
Linux GCC/G++ 编译与 Makefile 构建
linux·运维·服务器·经验分享
螺丝钉tina7 小时前
[Playwright][08] Upload 模块自动化:如何设计真实业务测试用例?
运维·自动化·测试用例
迪菲赫尔曼7 小时前
【基础篇 12】把环境与源码接起来:检查 GPU,再安装服务器上的项目
运维·服务器·开发语言·人工智能·python·yolo·目标检测
cq林志炫8 小时前
两个Linux服务器之间同步文件
linux·运维·服务器
yyuuuzz8 小时前
云服务器安全组规则优先级的机制记录
运维·服务器·网络·安全·阿里云·aws
KaiwuDB8 小时前
KaiwuDB 运维实战06:数据库备份与恢复:从理论到实战
运维·数据库·时序数据库·kaiwudb