Hugo博客公告弹窗

一个轻量、可靠的 Nginx 可视化运维面板

项目:https://github.com/woniu336/ngx-nova

轻量级的 Nginx 可视化运维面板,内存占用 低于 20MB,帮助你快速完成安装、站点管理、端口转发、备份与日志查看等常见任务。

✨ 功能亮点

  • 极简部署:单一 Go 二进制 + 静态前端,极低资源占用。

  • 一键安装/卸载:内置 nginx-acme 脚本调用,快速部署或清理 Nginx。

  • 站点与转发管理:图形化创建/编辑/删除站点与 Stream 转发配置,自动执行重载

  • 一键备份与恢复:本地备份 + 自动每天备份到 Cloudflare R2。

  • 日志中心:可视化按域名聚合 Access/Error 日志,支持刷新与独立查看。

  • 不再担心 SSL 证书过期,内置 ACME 自动化能力,HTTPS 证书申请与续期全自动完成。

🚀 快速开始

1.放行防火墙

ufw allow 8083/tcp
  1. 安装脚本
curl -sS -O https://raw.githubusercontent.com/woniu336/open_shell/main/ngx.sh && chmod +x ngx.sh && ./ngx.sh
  1. 登录http://ip:8083/ui/ 首次设置登录令牌

如需修改令牌

tokenctl --set "你的令牌" --file /opt/nginx-mgr/auth_token.json

卸载

curl -sS -O https://raw.githubusercontent.com/woniu336/open_shell/main/uni-ngx.sh && chmod +x uni-ngx.sh && ./uni-ngx.sh

设计理念

保持简单 拒绝“为了功能而功能”

默认安全 任何操作都不应该让线上服务崩溃

可长期运行 稳定、低占用、少维护

适合谁

个人 VPS 用户 自建网站与反向代理 追求稳定、可控运维体验的开发者与运维人员

日志轮转

sudo nano /etc/logrotate.d/nginx

如下

/var/log/nginx/*.log {
    daily
    size 300M
    rotate 3
    missingok
    notifempty
    compress
    delaycompress
    create 0640 www-data adm
    sharedscripts
    postrotate
        [ -s /run/nginx.pid ] && kill -USR1 $(cat /run/nginx.pid)
    endscript
}

检查定时任务是否正确设置

systemctl status logrotate.timer

查看下次执行时间

systemctl list-timers logrotate.timer

查看日志目录占用大小

du -sh /var/log/nginx

语法检查

logrotate -d /etc/logrotate.conf

强制执行一次

logrotate -f /etc/logrotate.conf

查看日志,按文件大小排序

cd /var/log/nginx
du -h * | sort -h

或更直观一点:

ls -lhS

删除轮转后的日志,只保留 .log,删除其余一切:

find /var/log/nginx -type f ! -name "*.log" -delete

ip证书开启

需要使用如下脚本安装

curl -sS -O https://raw.githubusercontent.com/woniu336/open_shell/main/ngx-s.sh && chmod +x ngx-s.sh && ./ngx-s.sh

然后替换nginx配置

# 1. 创建站点目录(幂等,重复执行也安全)
mkdir -p /var/www/lego
chown -R www-data:www-data /var/www/lego 2>/dev/null || true

# 2. 备份当前 nginx 配置
cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak.$(date +%F_%H-%M-%S)

# 3. 下载新配置到临时文件
wget -O /etc/nginx/nginx.conf.new \
https://github.com/jimugou/jimugou.github.io/releases/download/v1.0.0/nginx.conf

# 4. 使用新配置做语法检查(不影响正在运行的 nginx)
nginx -t -c /etc/nginx/nginx.conf.new

# 5. 校验通过后,原子替换并平滑重载
mv /etc/nginx/nginx.conf.new /etc/nginx/nginx.conf
systemctl reload nginx

申请ip证书

curl -sS -O https://raw.githubusercontent.com/woniu336/open_shell/main/ip-cert-apply.sh && chmod +x ip-cert-apply.sh && ./ip-cert-apply.sh

重启

systemctl restart nginx-mgr

打开https://ip:8083

续期脚本

curl -sS -O https://raw.githubusercontent.com/woniu336/open_shell/main/ip-renew.sh && chmod +x ip-renew.sh && ./ip-renew.sh

定时任务

(crontab -l 2>/dev/null; echo "5 3 * * * /root/ip-renew.sh >/root/lego-renew.log 2>&1") | crontab -

完成!

CC BY-NC-SA 4.0 转载请注明
最后更新于 2026-01-22 14:49