如何查看nginx安装了哪些模块,怎么查看nginx
《如何查看Nginx已安装的模块?5种方法全解析!》
在配置Nginx服务器时,了解已安装的模块对优化性能、排查配置错误或进行功能扩展至关重要,但许多用户对如何查看Nginx模块清单感到困惑,本文将为您提供5种权威查看方法,并附上详细操作指南。
官方命令法(推荐)
- 执行基础命令
终端输入:
nginx -V - 解析输出结果 命令执行后会输出包含模块信息的详细报告,重点关注:
- 模块名称(Module)
- 版本信息(Version)
- 模块路径(Path)
示例输出片段:
配置文件:/etc/nginx/nginx.conf 运行时间:2023/10/05 14:30:00 PID: 12345 协议:HTTP/1.1 模块: core模块 http模块 stream模块 common模块 log模块 crypto模块 ...(共32个模块)
配置文件溯源法

- 查看主配置文件
路径:
/etc/nginx/nginx.conf - 定位模块声明位置
在
http块内查找类似配置:http { include /etc/nginx/mime.types; include /etc/nginx/conf.d/*.conf; # 模块加载示例 load_module modules/ngx_httpCore_module.so; load_module modules/ngx_httpLog_module.so; }
包管理器查询法(Linux系统)
- Debian/Ubuntu系统
命令:
dpkg -L nginx - CentOS/RHEL系统
命令:
rpm -ql nginx - 查看模块包路径
输出文件会包含模块安装路径,如:
/usr/lib/nginx/modules/ngx_http_image_filter_module.so
Nginx管理界面法(需启用)
-
启用管理模块 修改配置:
http { ... include /etc/nginx/conf.d/default.conf; load_module modules/ngx_http管理的模块; server { location /nginx status { stub_status on; } } }
-
访问管理页面 浏览器输入:
http://服务器IP/nginx status查看模块状态列(Module)信息
二进制文件分析法
- 查看模块路径
命令:
nginx -V | grep modules - 解析动态链接库
使用文件查看工具(如hexdump)分析
nginx二进制文件,模块路径会包含在动态链接库中
进阶技巧:

- 模块状态验证
通过
nginx -V 2>&1 | grep module过滤模块名称 - 模块版本对比
使用
apt show nginx(Debian)或yum info nginx(RHEL)查看模块版本 - 模块依赖分析
通过
ldd /usr/lib/nginx/modules/模块名.so查看依赖关系
常见问题解答:
Q:看到模块显示"动态加载失败"怎么办?
A:检查模块路径是否正确,确保模块文件存在于/usr/lib/nginx/modules/目录下
Q:如何确认模块是否被实际使用?
A:在nginx.conf中查看是否有对应的load_module声明,或通过nginx -V的模块状态列确认
Q:发现新模块但配置未生效?
A:需要执行nginx -t进行配置语法检查,并确保模块被正确加载
掌握这些查看方法后,您不仅能快速掌握Nginx的模块构成,还能为后续的:
- 模块卸载(
nginx -V | grep "卸载模块名" | xargs /usr/bin/rm -f) - 模块升级(通过包管理器更新)
- 模块重载(
nginx -s reload)等操作奠定基础
建议定期执行nginx -V命令,记录模块变化情况,这对服务器维护和性能调优具有重要参考价值。
