一 安装NGINX

二 配置:

1 创建NGINX运行用户并查看其最大打开文件数量

查看cpu核数 修改系统级最大打开文件数 修改NGINX配置文件: 启动NGINX并查看最大链接数和进程数

2 配置

打开端口范围:

3 配置tcp文件传输相关

参数详解: sendfile:文件的高效传输模式。文件的高效模式需要 tcp_nopush: 优化网络,尽量减少报文的传输 tcp_nodelay: 优化磁盘,等待发送,当到达一定的数量再进行发送。减少磁盘I/O的消耗 正常通过read将数据考到内存,再将缓存区的数据到用户空间中,磁盘到OS的机制,更加高效。 keepalive_timout:保持此时间连接不中断

4 配置访问速度相关

1 配置最大连接数为1

其是通过内存进行控制的

2 控制带宽:

在限制之前的速度 限制之后的速度

3 限制等待链接的队列的长度

4 配置HTTPS:

1 配置文件中配置:

2 生成证书并发布到指定位置

3 检查语法并重载

4 配置客户端域名解析

5 测试:

5 网页重定向:

1 rewrite 用法:

"~"符号表示区分大小写字母的匹配 "~*"符号表示不区分大小写字母的匹配 "!~"和"!~*"符号的作用刚好和"~"、"~*"相反,表示不匹配 "-f"和"!-f"用来判断文件是否存在 "-d"和"!-d"用来判断目录是否存在 "-e"和"!-e"用来判断文件或目录是否存在 "-x"和"!-x"用来判断文件是否为可执行 常用正则 . : 匹配除换行符以外的任意字符 ? : 重复0次或1次

  • : 重复1次或更多次
  • : 重复0次或更多次 \d :匹配数字 ^ : 匹配字符串的开始 $ : 匹配字符串的介绍 {n} : 重复n次 {n,} : 重复n次或更多次 [c] : 匹配单个字符c [a-z] : 匹配a-z小写字母的任意一个 小括号()之间匹配的内容,可以在后面通过$1来引用,$2表示的是前面第二个()里的内容。正则里面容易让人困惑的是\转义特殊字符。

2 临时重定向

或 : 客户端测试:

3 永久重定向

客户端测试:

6 访问控制相关

1 配置当方位真实存在的文件或目录时, 直接返回结果,不显示

进行访问查看:

2 根据IP进行访问控制

3 根据网页URI进行访问控制

7 last 和break 用法:

break 直接跳出,不进行跳转 last 进行跳转

8 盗链:

服务端配置images 进行验证 客户端配置地址解析: 查看服务: 防盗链 显示: 查看:

显示连接情况:

配置日志更新机制: