1.nginx 入门
2020-04-15 本文已影响0人
_小二_
nginx
基本用法
使用场景:
- 反向代理和负载均衡
- 静态资源配置
- 利用强大的并发功能,直接访问数据库--api服务 OpenResty
优点:
- 高并发,高性能
- 可扩展性好 --强大的生态圈
- 高可靠 -持续不断的运行
- 热部署 --不停止服务的情况下升级
nginx
- BSD许可证--开源的,并且进行商业定制发布也是合法的
基本组成:
- 二进制可执行文件
nginx.conf
配置文件 --定义nginx处理请求的方式access.log
日志文件 --记录所有请求和响应信息error.log
错误日志文件--定位问题
编译nginx
:
configure
支持的参数分三类:
- 确定找那些文件作为编译的辅助文件 没有变动
--prefix-制定安装目录
with --默认不编译进nginx
,without --不加就默认编译进nginx
- 优化参数
运行 ./configure --prefix=Path
会生成中间模块 objs
文件夹,里面的ngx_modules.c
罗列了所有会被编译进nginx
的模块
执行 make
编译nginx
nginx
配置语法:
- 配置文件由 指令 和指令块 组成
- 每条指令以 ; 结尾,指令与参数间 以空格符分隔
- 指令块以大括号将多条指令组织在一起 --指令块运行包含指令块,,某些指令块可以有名字 (upstream)
- include 指令运行组合多个配置文件以提升可维护性
- 使用 #添加注释
- 使用 $添加变量
- 部分指令的参数支持正则表达式
nginx单位:
时间:1. 毫秒 milliseconds :ms 2. 秒 seconds:s 3. 分钟 minutes: m
4. 小时 hour: h 5. 天 days: d 6. 星期 weeks: w 7. 月 months: M
8. 年 years: y
--时间单位区分大小写,小写m是分钟,大写M是月
空间: 1. bytes : 不加任何后缀 2. kilobytes : k/K 3. megabytes: m/M
4.gigabytes : g/G
nginx指令块:
http -表示里面的指令全部有http模块解析执行的,
server -ip
upstream -表示上游服务,需要与内网的其他服务交互。里面的server是上游ip
location -url表达式
常用指令:
格式: nginx -s reload
帮助: nginx -? 或者 nginx -h
使用指定配置文件: nginx -c PATH
指定配置命令: nginx -g
指定运行目录: nginx -p
发送信号: nginx -s stop (立刻停止服务),
nginx -s quit (优雅的停止服务) ,
nginx -s reload (重载配置文件,不停止服务) ,
nginx -s reopen (重新开始记录日志文件),
nginx -t 或者 nginx -T (测试配置文件是否格式错误) ,
nginx -v 或者 nginx -V (nginx 版本信息) ,
热部署部分: kill -USR2 PID (关闭老进程的master).
kill -WINCH PID (关闭老进程的master PID 对应的worker进程 ),老的master进程不会自动关闭,留着版本回退,reload原版本