组成
- 可执行文件
- 配置文件
- access.log
- error.log
版本
版本选择
- nginx.org
- nginx.com
- tengine
- openresty.org
- openresty.com
编译 nginx
https://www.yuque.com/jdxj/ux1duz/oeg66h
- 配置高亮
$ cp -r contrib/vim/* ~/.vim/
- 编译前检查
$ ./configure --prefix=/home/jdxj/app/nginx
- 编译
$ make
- 安装
$ make install
配置
语法
例子:
时间单位:
空间单位:
指令块
- http
- server
- upstream
- location
命令行
热部署 nginx
- 备份
$ cp nginx nginx.old
- 覆盖原来的 nginx
$ cp new old
- 通知运行中的 master 进行热部署
$ kill -USR2 pid
- 优雅关闭旧 nginx
$ kill -WINCH pid
老的 worker 退出, 老的 master 仍在运行 (如果发现问题可以版本回退).
日志切割
# 1. 移动 log
# 2. reopen
$ nginx -s reopen
静态文件服务器
- 用 alias 而不用 root
- 可以使用 gzip 压缩 text 类型的页面
- autoindex 指令
- set $limit_rate
- log_format
缓存功能
- proxy_cache_path 缓存存储目录
- proxy_cache
GoAccess
TLS
密码套件
通讯过程
Nginx 握手性能
- RSA
- 椭圆加密算法