nginxWebUI v2.1.4

    科技2024-04-02  15

    文章目录

    简介技术说明安装配置使用优化升级问题找回密码日志分析是指nginx的日志还是nginxwebui的日志?证书管理中的Ali_Key 是什么意思?nginx的配置文件并没有被修改,页面修改影响是/home/nginxWebUI/nginx.conf,却可以作用到nginx的状态?解决

    简介

    官网 GitHub 作者陈钇蒙 Java编写的软件,实现页面方式配置nginx的各项功能, 包括http协议转发, tcp协议转发, 反向代理, 负载均衡, ssl证书自动申请、续签、配置等, 最终生成nginx.conf文件并覆盖nginx的默认配置文件, 完成nginx的最终功能配置。 可管理多个nginx服务器集群, 随时一键切换到对应服务器上进行nginx配置, 也可以一键将某台服务器配置同步到其他服务器, 方便集群管理 特殊说明 nginx本身功能复杂, 本项目并不能涵盖nginx所有功能, 只能配置常用功能, 更高级的功能配置仍然需要在最终生成的nginx.conf中进行手动编写。

    技术说明

    基于springBoot的web系统, 数据库使用sqlite, 因此服务器上不需要安装任何数据库 添加tcp/ip转发配置支持时, 一些低版本的nginx可能需要重新编译,通过添加–with-stream参数指定安装stream模块才能使用

    安装

    环境说明

    centos7 root用户操作

    1、安装java运行环境和nginx

    #推荐使用yum方式安装nginx) sudo yum install yum-utils -y #创建/etc/yum.repos.d/nginx.repo vim /etc/yum.repos.d/nginx.repo [nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/ gpgcheck=1 enabled=0 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true sudo yum install nginx -y #安装JDK yum install java-1.8.0-openjdk -y java -version

    2、下载最新版发行包jar

    sudo wget http://www.nginxwebui.cn/download/nginxWebUI-2.1.4.jar

    3、启动程序

    sudo nohup java -jar -Xmx64m nginxWebUI-2.1.4.jar --server.port=8080 --project.home=/home/nginxWebUI/ > /dev/null & #检测是否启动成功 netstat -ntpl|grep 8080

    参数说明

    -Xmx64m 最大分配内存数 --server.port 占用端口, 默认以8080端口启动 --project.home 项目配置文件目录,存放数据库文件,证书文件,日志等, 默认为/home/nginxWebUI/ 注意命令最后加一个&号, 表示项目后台运行

    配置

    打开 http://xxx.xxx.xxx.xxx:8080 进入主页

    登录页面 选择nginx的安装方式

    使用

    系统运行状态 可以实时监控系统的CPU、磁盘、内存的简单状态信息

    基本参数配置 设置nginx配置文件的基本选项(配置完成后会在生成conf的新配置文件中显示)

    http参数配置 nginx配置文件中的http区域的参数配置(配置完成后会在生成conf的新配置文件中显示)

    stream参数配置 nginx配置文件中的stream作用域的参数配置(配置完成后会在生成conf的新配置文件中显示)

    反向代理 可以进行添加反向代理、可以导入nginx.conf配置文件,也可以检查端口占用情况 (如果要使用四层负载,需要单独编译安装nginx的四层模块,详见nginx官方文档) nginx中有的stream + server +listen + proxy 等多种组合方式实现调度的目的。

    负载均衡 七层HTTP的负载,还可以负载节点监控 设置负载均衡的负载节点监控,可以发送SMTP发送邮件。

    区别:反向代理的概念是指四层TCP方式调度请求;负载均衡是指七层HTTP方式调度请求,他们的目的都是调度用户请求,减缓后端服务器压力,只不过一个是四层,一个是七层

    参数模板 设置常用的参数,方便下次使用。

    静态网页上传 上传静态页面的zip包,位置在/home/nginxWebUI/wwww/xxx文件,自动解压。

    密码文件管理 密码备忘录的功能

    证书管理 可以自动续费证书

    生成conf 可以在此处 restart、reload、stop、start、读取配置文件、替换文件(替换则会自动备份到备份文件管理) 对比两次文件的修改细节 需要设置nginx的nginx.conf路径; nginx执行命令 nginx目录等。

    备份文件管理 每次修改配置文件时进行备份,用于回退nginx配置。

    日志解析 借助作者的日志分析,我现在还没搞明白日志是指哪个日志?

    管理员管理 登录用户的管理

    数据导入导出 日志、配置文件的导出。

    远程管理 远程服务器

    优化

    升级

    问题

    找回密码

    1、安装sqlite3命令

    yum install -y sqlite-3.7.17-8.el7_7.1.i686

    2、读取sqlite.db文件

    sqlite3 /home/nginxWebUI/sqlite.db

    3、查找admin表

    select * from admin;

    4、退出sqlite3

    .quit

    日志分析是指nginx的日志还是nginxwebui的日志?

    证书管理中的Ali_Key 是什么意思?

    nginx的配置文件并没有被修改,页面修改影响是/home/nginxWebUI/nginx.conf,却可以作用到nginx的状态?

    [root@localhost nginx]# tail -n 10 /etc/nginx/nginx.conf sendfile on; #tcp_nopush on; keepalive_timeout 65; #gzip on; include /etc/nginx/conf.d/*.conf; } [root@localhost nginx]# tail -n 10 /home/nginxWebUI/nginx.conf gzip_min_length 8k; gzip_comp_level 2; client_max_body_size 1024m; client_header_buffer_size 32k; client_body_buffer_size 8m; map $http_upgrade $connection_upgrade { default upgrade; '' close; } }

    解决

    这是因为在web页面进行的操作是指定配置文件、指定路径的。 命令如下

    nginx -s reload -c /home/nginxWebUI/nginx.conf -p /home/nginxWebUI/
    Processed: 0.037, SQL: 9