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新增模块就成功了

相关推荐
Starry-sky(jing)23 分钟前
crane 下载镜像:不连接 Docker,3 步准备并校验 ARM64 离线包
运维·docker·arm64·crane
古法老登瞎折腾34 分钟前
大数据智能运维实战(八):从调度任务追到计算引擎——补齐排查链路
java·大数据·运维·spring ai·mcp
zhongben123_36 分钟前
从0到1开发一款生鲜配送APP:核心技术难点与架构避坑指南
大数据·运维·人工智能·ios·架构·web app
学页官方1 小时前
部署实战】教培系统私有化部署全流程:从云服务器到上线验收
运维·服务器
时间售卖铺1 小时前
MySQL 备份
运维·数据库·mysql·云原生
指艺1 小时前
VirtualBox安装fedora完成后重启,仍提示安装fedora
运维·服务器
4SAPI2 小时前
电商全链路内容自动化生成大模型 API 生产选型指南:4SAPI、硅基流动与 OpenRouter 的架构权衡
运维·人工智能·架构·自动化·1024程序员节
Leo.yuan2 小时前
数据准备工具进入自动化时代:7款产品的实际使用场景与选择建议
运维·自动化
吴建旭 智宅焕2 小时前
智能家居全国交付模式选型架构设计:连接型与兜底型的决策矩阵与匹配逻辑
运维·智能家居·devops
庵中十三居士2 小时前
用nginx代理DeepSeekHarness挂在域名下特定路径提供访问
运维·nginx·deepseek·harness