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