Nginx可视化管理工具:NPM、nginx config、Nginx UI、NginxWebUI、Nginx Pulse

汇总介绍几款Nginx可视化管理工具

工具名称 主要语言 核心优势 适合场景 部署方式
Nginx Proxy Manager Node.js 界面美观,SSL自动化 个人/小团队快速部署 Docker
NginxWebUI Java 功能全面,集群管理 企业级多服务器管理 Jar/Docker
Nginx UI Go 现代化界面,AI辅助 需要现代UI和监控 二进制/Docker
Nginx Pulse Go、Vue3 性能监控,深度分析 生产环境监控 多种
Nginx Config JS 配置生成,语法验证 开发环境配置管理 Web应用

nginx-proxy-manager

官网,简称NPM,一个开源(GitHub,32.4K Star,3.7K Fork)的反向代理管理系统,基于Nginx,提供漂亮干净的Web UI。还可获得受信任的SSL证书,并通过单独的配置、自定义和入侵保护来管理多个代理。

特征

  • 基于Tabler的美观安全的管理界面
  • 无需了解Nginx即可轻松创建转发域、重定向、流和404主机
  • 使用Let's Encrypt的免费SSL、提供您自己的自定义SSL证书
  • 主机的访问列表和基本HTTP身份验证
  • 高级Nginx配置可供超级用户使用
  • 用户管理、权限和审核日志

安装

nginx config

Digital Ocean开源(GitHub,28.3K Star,2K Fork)工具,支持HTTPS,HTTP/2,IPv6,certbot,HSTS,安全标头,SSL配置文件,OCSP解析器,缓存,gzip,brotli,后备路由,反向代理,www/non-www重定向,CDN,PHP(TCP/Socket,WordPress,Drupal,Magento,Joomla),Node.js支持,Python(Django)服务器等。

核心特性:

  • 可视化配置生成器
  • 配置文件语法验证
  • 配置模板管理
  • 批量配置生成
  • 配置差异对比

适用场景:需要频繁修改和验证Nginx配置的开发环境。

实战

基于源码安装:

bash 复制代码
git clone https://github.com/digitalocean/nginxconfig.io.git
cd nginxconfig.io
npm ci
npm run dev

浏览器打开http://localhost:8080开始体验。

Nginx UI

官网,开源(GitHub,11K Star,795 Fork)现代化全功能Nginx可视化管理面板,在线演示,用户名密码为admin/admin

功能特性

  • 极简部署:基于Go和Vue构建,单二进制文件,开箱即用
  • AI智能驱动:内置AI助手与MCP协议,支持大模型代码补全及DeepSeek思考链展示
  • 自动化运维:配置自动备份/回滚、一键申请及续签Let's Encrypt证书
  • 集群化管理:支持多节点同步镜像操作,轻松驾驭多服务器环境
  • 实时全景监控:可视化查看CPU、内存、负载及磁盘指标,在线追踪Nginx日志
  • 深度编辑体验:支持语法高亮、自动测试重载及内置高级网页终端
  • 灵活迁移:支持加密导出/导入配置,实现环境快速平替与恢复
  • 现代交互:完全自适应布局,原生支持深色模式

实战

以官方提供的在线演示进行,打开后的主界面,默认打开服务器仪表盘

服务器展示:基本信息、内存和存储、流量统计、CPU状态、网络、磁盘IO、节点。

NginxWebUI

官网,国内开发者cym1102开源(GitHub,2.6K Star,394 Fork)一款图形化Nginx配置管理工具,功能全面且支持集群管理。另,代码托管与码云,也收获5.8K Star,1.8K Fork。

核心特性:

  • 支持HTTP/TCP协议转发、反向代理、负载均衡
  • SSL证书自动申请、续签和配置
  • 多服务器集群批量管理
  • 支持配置文件同步和备份
  • 日志分析和图形化展示
  • Docker容器部署支持

技术栈:Java、Spring Boot、Vue

适用场景:企业级Nginx集群管理,需要批量配置和多服务器同步的场景。

提供专业版,与开源版的区别

功能 专业版 开源版
基本参数配置
http参数配置
反向代理配置
Stream参数配置
负载均衡配置
参数模板
静态网页上传
密码文件管理
黑白名单IP
证书申请
API接口文档
远程管理
节点及分组统一管理 ×
节点配置文件统一同步 ×
节点信息数据采集 ×
节点状态统计 ×
缓存配置 ×
nginx日志采集 ×
nginx日志查看 ×
nginx日志统计 ×
nginx流量统计 ×

实战

官网或GitHub Release页面下载Jar

bash 复制代码
# 或通过wget
wget -O /home/nginxWebUI/nginxWebUI.jar https://gitee.com/cym1102/nginxWebUI/releases/download/4.3.9/nginxWebUI-4.3.9.jar
java -jar -Dfile.encoding=UTF-8 D:/nginxWebUI/nginxWebUI-4.3.9.jar --server.port=8080 --project.home=D:/nginxWebUI

nohup java -jar -Dfile.encoding=UTF-8 /home/nginxWebUI/nginxWebUI-4.3.9.jar --server.port=8080 --project.home=/home/nginxWebUI/ > /dev/null &

参数说明:都是非必填

  • --server.port:占用端口,默认以8080端口启动
  • --project.home:项目配置文件目录,存放数据库文件,证书文件,日志等,默认为/home/nginxWebUI/
  • --spring.database.type=mysql:使用其他数据库,不填为使用本地sqlite数据库,可选mysql、postgresql
  • --spring.datasource.url=jdbc:mysql://ip:port/nginxwebui:数据库url
  • --spring.datasource.username=root:数据库用户
  • --spring.datasource.password=pass:数据库密码
  • --init.admin=admin:初始用户名
  • --init.pass=admin:初始用户密码
  • --init.api=true:初始用户开启api权限

基于Docker部署

bash 复制代码
docker run -itd -v /home/nginxWebUI:/home/nginxWebUI -e BOOT_OPTIONS="--server.port=8080" --net=host --restart=always cym1102/nginxwebui:latest

注意:

  • 启动容器时请使用--net=host参数,直接映射本机端口,因内部Nginx可能使用任意一个端口,所以必须映射本机所有端口
  • 容器需要映射路径/home/nginxWebUI:/home/nginxWebUI,此路径下存放项目所有数据文件,包括数据库、Nginx配置文件、日志、证书等,升级镜像时,此目录可保证项目数据不丢失。请注意备份

Nginx Pulse

官网,开源(GitHub,2.4K Star,163 Fork)基于Go、Vue3和PG构建的轻量级Nginx日志分析和可视化平台,支持PV/UV统计、IP归属地分析、客户端设备解析等功能,适合个人站长和小型团队使用。可替代GoAccess和百度统计。

功能:

  • 实时展示网站访问量、PV、UV、IP统计和分析、用户行为分析
  • 分析请求来源、访问设备、浏览器、操作系统
  • 统计热门接口、访问路径、状态码分布(404、500、200等)
  • 支持多站点统一管理,不用每个站单独部署
  • 提供可视化面板,图表清晰,不用手动查日志
  • 性能指标收集
  • 集成告警系统

IP归属地查询策略

  1. 快速过滤:空值/本地/回环地址返回"本地",内网地址返回"内网/本地网络"。
  2. 解析解耦:日志解析阶段仅入库并标记"待解析",IP归属地由后台任务异步补齐并回填。
  3. 缓存优先:持久化缓存+内存缓存命中直接返回(默认上限1,000,000条)。
  4. 本地优先(IPv4/IPv6):优先查ip2region,本地结果可用时直接使用。
  5. 远程补齐:本地返回未知或解析失败时,调用远端API(默认ip-api.com/batch,可配置)批量查询(超时1.2s,单批最多100个)。
  6. 远程失败:返回未知。

实战

基于Docker

bash 复制代码
docker run -d --name nginxpulse \
	-p 8088:8088 \
	-e PUID=1000 \
	-e PGID=1000 \
	-v ./docker_local/logs:/share/logs:ro \
	-v ./docker_local/nginxpulse_data:/app/var/nginxpulse_data \
	-v ./docker_local/pgdata:/app/var/pgdata \
	-v ./docker_local/configs:/app/configs \
	-v /etc/localtime:/etc/localtime:ro \
	magiccoders/nginxpulse:latest

解读:./docker_local/logs目录下存放Nginx日志文件,支持本地导入和实时。

任何能使用Docker部署的应用,都可基于Docker Compose部署:

java 复制代码
version: '3.8'
services:
  nginxpulse:
    container_name: nginxpulse
    image: magiccoders/nginxpulse:latest
    restart: unless-stopped
    ports:
      - "8088:8088"
    volumes:
      - /data/nginxpulse/logs:/share/logs:rw
      - /data/nginxpulse/nginxpulse_data:/app/var/nginxpulse_data
      - /data/nginxpulse/pgdata:/app/var/pgdata
      - /etc/localtime:/etc/localtime:ro

解读:只要有Docker部署命令,即可找到在线工具网站将Docker部署命令转换为docker-compose.yaml脚本,或扔给GPT生成。

相关推荐
Linux运维老纪2 小时前
nginx 打造高性能 API 网关(‌Building a High-Performance API Gateway with Nginx)
linux·运维·mysql·nginx·云计算·运维开发
FenceRain19 小时前
Nginx 升级,平滑升级不停服务
服务器·网络·nginx
武器大师721 天前
实战踩坑:Gerrit HTTP 克隆失败解决方案
运维·nginx·gerrit
Plastic garden1 天前
Docker Compose 的 RuoYi nginx exporter Prometheus + Alertmanager + 钉钉告警
nginx·docker·prometheus
一个儒雅随和的男子1 天前
Nginx底层原理介绍
运维·nginx
小悟空1 天前
[AI 生成] Nginx 502 Bad Gateway 排查手册(Python 后端篇)
python·nginx·gateway
Anthony_2311 天前
Linux 从基础操作到故障排查
linux·运维·服务器·网络·nginx·ubuntu·centos
唐装鼠2 天前
Nginx + Gunicorn + Python Web 应用 架构(Claude)
python·nginx·gunicorn
難釋懷2 天前
Nginx扩容
运维·nginx