64 lines
1.4 KiB
Markdown
64 lines
1.4 KiB
Markdown
# 学习资源
|
||
## 微信书城
|
||
- Nginx底层设计与源码实现
|
||
- Nginx实战:基于Lua语言的配置、开发与架构详解
|
||
|
||
|
||
# 安装
|
||
## 下载
|
||
|
||
- [Nginx](http://nginx.org/en/download.html)
|
||
|
||
## 配置
|
||
|
||
|
||
|
||
# 作用
|
||
|
||
Nginx是一个代理服务器,位于客户端与服务器之间,负责保护主机安全,负责干脏活累活,减轻服务器压力。
|
||
|
||
服务器压力大就会需要用到,压力不大其实无所谓。
|
||
|
||
- 逻辑相对简单
|
||
- 主要负责转发数据
|
||
- 需要对数据进行校验和分发
|
||
|
||
## 正向代理
|
||
|
||
代理服务器位于客户端之前,没有任何服务器能绕过代理,与客户端通信
|
||
|
||
## 反向代理
|
||
|
||
代理服务器位于服务器之前,没有任何客户端能绕过代理,与服务器通信
|
||
|
||
# 原理
|
||
|
||
指令相当于Nginx的代码,通过指令能实现常用需求,可结合其它编程语言如lua 实现多样化的需求。
|
||
|
||
## 指令
|
||
|
||
- 指令 = 名称 参数;
|
||
- 指令块 = 名称 { 指令|指令块}
|
||
|
||
最外层指令为全局指令
|
||
|
||
同名指令会覆盖上层
|
||
|
||
## 常用指令
|
||
|
||
- include
|
||
- 导入配置文件
|
||
- http
|
||
- 主要管理与客户端相关的配置
|
||
- http.server
|
||
- 通过 端口 + 域名 匹配指定请求
|
||
- .location
|
||
- 通过URL匹配分配请求
|
||
- 通过状态码匹配特殊请求(404错误)
|
||
- .location.index
|
||
- 默认页面
|
||
|
||
- root
|
||
- 站点根目录
|
||
- 匹配目录下的资源
|