nginx系列二: nginx配置语法分析、常用命令、热升级、日志切割

简介: nginx系列

一、nginx配置语法介绍

1. 配置文件是由指令和指令块组成的

2. 每条指令以分号结尾,指令和参数间以空格分隔

3. 指令块以 {} 将多条指令组织在一起

4. incloud语句允许组合多个配置文件

5. 使用#添加注释,通过$使用变量

6. 部分指令参数支持正则

7. nginx指令块包括四个部分,http,server,location,upstream


二、nginx常用命令

# 指定配置文件启动
nginx -c nginx.conf
# 查看nginx版本
nginx -v 或 nginx -V
# 给进程发送信号,立刻停止、优雅退出、重载配置文件、重新创建一个文件记录日志
nginx  -s  stop
nginx  -s  quit
nginx  -s  reload
nginx  -s  reopen
# 检查配置文件语法,nginx -s reload 相当于先执行检查语法的动作,然后执行加载配置文件动作
nginx -t nginx.conf

三、nginx热升级

热升级时,只需要将替换nginx二进制文件即可

1. 将旧的nginx二进制文件备份

2. 制作新的nginx二进制文件,注意,在进行configure编译是,--prefix指定的安装路径需要和旧的nginx安装路径一致,只需要执行configure就可以了,make && make install 切记不可执行

3. 将新的nginx二进制文件拷贝到sbin目录下

4. 给旧的nginx master进程发送USR2信号,这样就会使用新的nginx二进制文件启动新的进程

5. 等到新的nginx进程启动以后,给旧的nginx进程发送WINCH信号,这样旧的nginx master进行就会关闭旧的nginx worker进程

6. 之后旧的nginx master进程还会存在,用来回滚,如果确认新的nginx进程没有问题,通过kill信号关闭旧的master进程即可

7. 如果新的nginx进程有问题,使用旧的nginx二进制文件进行回滚

mv nginx nginx.old
cp new_old nginx
ps -ef | grep nginx
kill -USR2 $old_nginx_master_pid
kill -WINCH $old_nginx_master_pid


四、nginx日志切割

日志切割需要将原先的日志文件备份,然后给nginx进行发送USR1信号或执行 nginx -s reopen命令即可

# 执行
kill -USR1 $nginx_master_pid
# 或者
nginx -s reload
相关实践学习
通过日志服务实现云资源OSS的安全审计
本实验介绍如何通过日志服务实现云资源OSS的安全审计。
目录
相关文章
|
3月前
|
存储 调度 C++
16 倍性能提升,成本降低 98%! 解读 SLS 向量索引架构升级改造
大规模数据如何进行语义检索? 当前 SLS 已经支持一站式的语义检索功能,能够用于 RAG、Memory、语义聚类、多模态数据等各种场景的应用。本文分享了 SLS 在语义检索功能上,对模型推理和部署、构建流水线等流程的优化,最终带给用户更高性能和更低成本的针对大规模数据的语义索引功能。
398 32
|
3月前
|
监控 安全 程序员
Python日志模块配置:从print到logging的优雅升级指南
从 `print` 到 `logging` 是 Python 开发的必经之路。`print` 调试简单却难维护,日志混乱、无法分级、缺乏上下文;而 `logging` 支持级别控制、多输出、结构化记录,助力项目可维护性升级。本文详解痛点、优势、迁移方案与最佳实践,助你构建专业日志系统,让程序“有记忆”。
323 0
|
4月前
|
编解码 应用服务中间件 Linux
centos配置nginx-rtmp实现ffmpeg转码rtsp为rtmp视频流
centos配置nginx-rtmp实现ffmpeg转码rtsp为rtmp视频流
467 1
|
4月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
325 18
|
4月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
422 17
|
5月前
|
数据建模 应用服务中间件 PHP
配置nginx容器和php容器协同工作成功,使用ip加端口的方式进行通信
本示例演示如何通过Docker挂载同一宿主目录至Nginx与PHP容器,实现PHP项目运行环境配置。需注意PHP容器中监听地址修改为0.0.0.0:9000,并调整Nginx配置中fastcgi_pass指向正确的IP与端口。同时确保Nginx容器中/var/www/html权限正确,以避免访问问题。
配置nginx容器和php容器协同工作成功,使用ip加端口的方式进行通信
|
6月前
|
应用服务中间件 网络安全 nginx
配置Nginx以支持Websocket连接的方法。
通过上述配置,Nginx将能够理解WebSocket协议的特殊要求,代理Websocket流量到合适的后端服务器。注意,Websocket并不是HTTP,尽管它最初是通过HTTP请求启动的连接升级,因此保证Nginx了解并能够妥善处理这种升级流程是关键。
1505 10
|
5月前
|
Ubuntu 应用服务中间件 Linux
在Ubuntu上配置Nginx实现开机自启功能
至此,Nginx应该已经被正确地设置为开机自启。在Ubuntu中利用 `systemd`对服务进行管理是一种高效的方式,为系统管理员提供了强大的服务管理能力,包括但不限于启动、停止、重启服务,以及配置服务的开机自启动。通过这些简洁的命令,即使是对Linux不太熟悉的用户也能轻松地进行配置。
265 0
|
应用服务中间件 nginx
Nginx命令加入系统变量中
Nginx命令加入系统变量中
323 0
|
8月前
|
应用服务中间件 Linux 网络安全
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
842 87