一、 前言:为什么需要Nginx-UI?
对于运维或开发人员来说,Nginx几乎是Web服务的标配。但传统的管理方式往往依赖终端手动编辑nginx.conf,配置繁琐且容易出错,尤其是管理多个站点和SSL证书时。
Nginx-UI 应运而生,它是一个由Go和Vue构建的Web界面工具,不仅能实时查看服务器流量、负载等指标,还支持在线编辑配置、一键申请Let's Encrypt证书、自动重载服务等功能。更重要的是,它是一个单二进制文件,安装极其简单,非常适合个人开发者或中小企业使用。

二、 环境准备
在开始安装前,请确保你的服务器满足以下基础条件:
- 操作系统:主流Linux发行版(如Ubuntu 20.04+/CentOS 7+/Debian 10+等)。
- 权限要求 :需要使用具有
sudo权限或root用户进行操作。 - 依赖软件:服务器已安装Nginx。Nginx-UI主要负责管理配置文件,默认会接管Nginx的配置目录结构。
注意 :Nginx-UI遵循Debian系的配置规范(即使用
sites-available和sites-enabled目录)。如果你的系统是CentOS等非Debian系,建议先调整nginx.conf,确保包含上述两个目录,以保证兼容性。
三、 一键脚本安装(推荐)
Nginx-UI官方提供了便捷的安装脚本,支持自动检测系统环境、下载最新版本并配置系统服务。
1. 执行安装命令
打开终端,直接运行以下命令:
bash
bash -c "$(curl -L https://cloud.nginxui.com/install.sh)" @ install
命令解析:该脚本会自动从官方渠道下载适配你系统架构的最新稳定版二进制文件,并将其安装到系统路径中。
2. 安装过程详解
脚本执行过程中,你会看到类似如下输出:
- 检测系统架构:如x86_64或aarch64。
- 下载二进制文件:进度条显示下载进度。
- 配置服务:自动生成Systemd服务文件,实现开机自启。
安装成功后,默认的监听端口为 9000。
四、 服务管理与初始化
安装完成后,我们需要启动服务并进行初始化设置。
1. 启动Nginx-UI服务
使用Systemd管理服务,执行以下命令:
bash
# 启动服务
sudo systemctl start nginx-ui
# 查看服务运行状态
sudo systemctl status nginx-ui
若看到"active (running)"字样,说明服务已成功启动。
2. 初始化Web界面
打开浏览器,访问你的服务器地址:
http://你的服务器IP:9000
首次访问时,Nginx-UI会引导你进行初始化设置,主要包括:


管理员账户 :设置你的登录用户名和密码(请务必牢记)。

设置完成后,即可进入主控制台。
五、 进阶配置与安全加固
为了生产环境的安全,建议进行以下两项优化。
1. 配置Systemd服务开机自启
虽然安装脚本通常已处理,但手动确保一下更稳妥:
bash
sudo systemctl enable nginx-ui
2. 配置Nginx反向代理(强烈推荐)
直接暴露9000端口可能存在安全隐患。建议通过Nginx反向代理,使用域名和HTTPS加密访问。
在Nginx配置目录(如/etc/nginx/sites-available)新建配置文件nginx-ui.conf,内容如下:
nginx
server {
listen 80;
server_name your-domain.com; # 替换为你的域名
location / {
proxy_pass http://127.0.0.1:9000; # 转发到Nginx-UI本地端口
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
配置完成后,软链接至启用目录并重载Nginx:
bash
# 创建软链接
sudo ln -s /etc/nginx/sites-available/nginx-ui.conf /etc/nginx/sites-enabled/
# 测试配置语法
sudo nginx -t
# 重载Nginx服务
sudo systemctl reload nginx
此后,你就可以通过 http://your-domain.com 安全访问Nginx-UI了,后续也可以直接在UI中为该域名申请SSL证书。