admin管理员组

文章数量:1635678

在服务器运维的世界里,Nginx 一直以其高性能和稳定性著称。不过,对于很多运维人员来说,直接操作配置文件来管理 Nginx 服务可能会显得有些繁琐。于是,一款名为 Nginx UI 的全新网络管理界面应运而生,它致力于让 Nginx 服务器的管理和配置变得更加直观易用。

实时监控,一目了然

Nginx UI 提供了详尽的实时服务器统计数据展示功能,通过图形化的方式呈现关键性能指标,比如访问量、响应时间等,帮助管理员快速把握服务器状态,及时发现并解决问题。

智能助手,在线答疑

集成了一位特别的“助手”——ChatGPT 助手。遇到配置难题时,用户可以随时与这位虚拟助手交流,获取专业建议或是解决具体问题的方法。这不仅提升了用户体验,也为那些刚接触 Nginx 的新手提供了宝贵的指导资源。

一键部署,轻松上手

针对不同应用场景下的需求,Nginx UI 支持一键部署功能,无论是设置反向代理还是负载均衡,只需简单几步就能完成配置。即便是对 Nginx 不太熟悉的用户也能迅速搭建起自己的服务架构。

安全无忧,证书自动续签

考虑到 HTTPS 加密的重要性,该平台还集成了 Let’s Encrypt 证书自动化管理机制。这意味着用户无需担心 SSL/TLS 证书过期的问题,Nginx UI 会自动处理证书的申请及后续更新工作,确保网站始终处于最佳的安全防护状态之下。

总之,Nginx UI 的出现极大地简化了 Nginx 服务器的操作流程,从日常维护到故障排查都变得更加高效便捷。对于追求极致体验和技术革新的朋友们来说,这绝对是一个值得尝试的好工具!

在线预览

网址:https://demo.nginxui

用户名:admin
密码:admin

开源地址:

https://gitee/xu_dazhous_spring/nginx-ui

https://github/0xJacky/nginx-ui

特色

在线查看服务器 CPU、内存、系统负载、磁盘使用率等指标
在线 ChatGPT 助理
一键申请和自动续签 Let’s encrypt 证书
在线编辑 Nginx 配置文件,编辑器支持 Nginx 配置语法高亮
在线查看 Nginx 日志
使用 Go 和 Vue 开发,发行版本为单个可执行的二进制文件
保存配置后自动测试配置文件并重载 Nginx
基于网页浏览器的高级命令行终端
支持深色模式
自适应网页设计

国际化

英语
简体中文
繁体中文
我们欢迎您将项目翻译成任何语言。

构建基于

The Go Programming Language
Gin Web Framework
GORM
Vue 3
Vite
TypeScript
Ant Design Vue
vue3-gettext
vue3-ace-editor
Gonginx

入门指南

使用前注意

Nginx UI 遵循 Debian 的网页服务器配置文件标准。创建的网站配置文件将会放置于 Nginx 配置文件夹(自动检测)下的 sites-available 中,启用后的网站将会创建一份配置文件软连接到 sites-enabled 文件夹。您可能需要提前调整配置文件的组织方式。

对于非 Debian (及 Ubuntu) 系统,您可能需要将 nginx.conf 配置文件中的内容修改为如下所示的 Debian 风格。

http {
	# ...
	include /etc/nginx/conf.d/*.conf;
	include /etc/nginx/sites-enabled/*;
}

更多信息请参阅:debian/conf/nginx.conf

安装

Nginx UI 可在以下平台中使用:

Mac OS X 10.10 Yosemite 及之后版本(amd64 / arm64)
Linux 2.6.23 及之后版本(x86 / amd64 / arm64 / armv5 / armv6 / armv7)
包括但不限于 Debian 7 / 8、Ubuntu 12.04 / 14.04 及后续版本、CentOS 6 / 7、Arch Linux
FreeBSD
OpenBSD
Dragonfly BSD
Openwrt
您可以在 最新发行 (latest release) 中下载最新版本,或使用 Linux 安装脚本。

使用方法

第一次运行 Nginx UI 时,请在浏览器中访问 http://<your_server_ip>:<listen_port>/install 完成后续配置。

通过执行文件运行

在终端中运行 Nginx UI

nginx-ui -config app.ini

在终端使用 Control+C 退出 Nginx UI。

在后台运行 Nginx UI

nohup ./nginx-ui -config app.ini &

使用以下命令停止 Nginx UI

kill -9 $(ps -aux | grep nginx-ui | grep -v grep | awk '{print $2}')

使用 Systemd
如果你使用的是Linux 安装脚本,Nginx UI 将作为 nginx-ui 服务安装在 systemd 中。请使用 systemctl 命令控制。

启动 Nginx UI

systemctl start nginx-ui

停止 Nginx UI

systemctl stop nginx-ui

重启 Nginx UI

systemctl restart nginx-ui

使用 Docker

您可以在 docker 中使用我们提供的 uozi/nginx-ui:latest 镜像,此镜像基于 nginx:latest 构建。您可以直接将其监听到 80 和 443 端口以取代宿主机上的 Nginx。

注意:映射到 /etc/nginx 的文件夹应该为一个空目录。

注意
首次使用时,映射到 /etc/nginx 的目录必须为空文件夹。
如果你想要托管静态文件,可以直接将文件夹映射入容器中。

Docker 部署示例

docker run -dit \
  --name=nginx-ui \
  --restart=always \
  -e TZ=Asia/Shanghai \
  -v /mnt/user/appdata/nginx:/etc/nginx \
  -v /mnt/user/appdata/nginx-ui:/etc/nginx-ui \
  -p 8080:80 -p 8443:443 \
  uozi/nginx-ui:latest

手动构建

对于没有官方构建版本的平台,可以尝试手动构建。

依赖

Make

Golang 1.19+

node.js 18+

npx browserslist@latest --update-db

构建前端

请在 frontend 目录中执行以下命令。

yarn install
make translations
yarn build

构建后端

请先完成前端编译,再回到项目的根目录执行以下命令。

go build -o nginx-ui -v main.go

Linux 安装脚本

基本用法
安装或升级

bash <(curl -L -s https://ghproxy.com/https://raw.githubusercontent.com/0xJacky/nginx-ui/master/install.sh) install -r https://ghproxy.com/

一键安装脚本默认设置的监听端口为 9000,HTTP Challenge 端口默认为 9180,如果出现端口冲突请进入 /usr/local/etc/nginx-ui/app.ini 修改,并使用 systemctl restart nginx-ui 重启 Nginx UI 服务。

卸载 Nginx UI 但保留配置和数据库文件

bash <(curl -L -s https://ghproxy.com/https://raw.githubusercontent.com/0xJacky/nginx-ui/master/install.sh) remove

更多用法

bash <(curl -L -s https://ghproxy.com/https://raw.githubusercontent.com/0xJacky/nginx-ui/master/install.sh) help

Nginx 反向代理配置示例

server {
    listen          80;
    listen          [::]:80;

    server_name     <your_server_name>;
    rewrite ^(.*)$  https://$host$1 permanent;
}

map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      close;
}

server {
    listen  443       ssl http2;
    listen  [::]:443  ssl http2;

    server_name         <your_server_name>;

    ssl_certificate     /path/to/ssl_cert;
    ssl_certificate_key /path/to/ssl_cert_key;

    location / {
        proxy_set_header    Host                $host;
        proxy_set_header    X-Real-IP           $remote_addr;
        proxy_set_header    X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header    X-Forwarded-Proto   $scheme;
        proxy_http_version  1.1;
        proxy_set_header    Upgrade             $http_upgrade;
        proxy_set_header    Connection          $connection_upgrade;
        proxy_pass          http://127.0.0.1:9000/;
    }
}

本文标签: 服务器统计数据一键网络管理实时