nginx由哪些部分组成
Nginx二进制可执行文件
由各模块源码编译出的一个文件,用于提供功能,执行命令等
nginx.conf 配置文件
控制Nginx的行为,让nginx做什么事情
access.log 成功日志
记录每一条成功的记录
error.log 错误日志
定位问题
这里主要讲的是 nginx.conf
配置文件
nginx 常用命令行命令
# 查看nginx帮助
nginx -h
# 启动 nginx
nginx
# nginx 安装信息
nginx -V
# 检测 nginx 配置, 主要是语法检测。
# 还有一个作用是快速找到当前nginx启动的配置文件位置。
nginx -t
# 热更新,nginx 配置。向主进程发送信号: 停止,退出,重新打开,重新加载
# stop, quit, reopen, reload
# ------
# stop 立即停止服务
# quit 处理完当前的请求后停止服务
# reload 不停止服务的情况下重载配置文件
# reopen 使nignx进程重新打开日志文件,以便实现日志分割的效果
# ------
# 最常用的是 reload
nginx -s reload
# 指定配置文件
nginx -c nginx.new.conf
nginx.conf 的组成规则
- 配置文件由指令与指令块构成
- 每条指令以
;
分号结尾,指令与参数间以空格符号分隔 - 指令块以
{ }
大括号将多条指令组织在一起 include
语句允许组合多个配置文件以提升可维护性- 使用
#
符号添加注释,提高可读性 - 使用
$
符号使用变量 - 部分指令的参数支持正则表达式
指令和指令块
时间参数
时间 | 意义 |
---|---|
ms | milliseconds |
s | seconds |
m | minutes |
h | hours |
d | days |
w | weeks |
M | months, 30 days |
y | years, 365 days |
# 缓存时间3分钟
expires 3m;
空间参数
空间简写 | 全写 |
---|---|
- | bytes |
k/K | kilobytes |
m/M | megabytes |
g/G | gigabytes |
# nginx限制访问频率配置指令。
# 这里开了一个10M大小的共享内存空间,以提供给不同的worker使用。
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;