专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

Nginx(三) -- ngx_http_core_module

一:位置替换

1.1 alias

只能作用于location中

# 替换掉location定义的访问路径
# 图片资源在image/下,访问http:zsl.com/alias/1.jpg返回image/1.jpg图片
location /alias {
  alias image;
}
# 如果location结尾定义了/,alias结尾必须用/结束
location /alias/ {
  alias image/;
}

1.2 root

可以作用于http、server、location、if in location

# 访问路径前增加一段根目录
# 图片在image/root/,访问http://zsl.com/root/1.jpg返回image/root/1.jpg
location /root {
    root image;
}

二:请求头与请求体

2.1 client_header_buffer_size

可以作用于http、server

# 定义客户端请求头缓冲区大小
# 默认值1K
# 如果超过设定值则会large_client_header_buffers参数分配
client_header_buffer_size 1k;

2.2 large_client_header_buffers

可以作用于http、server

# 定义客户端大请求头缓冲数量以及大小
# 默认值有4个 8K大缓冲
# 这是临时分配缓冲内存,使用完毕将被回收
# number 表示开辟的数量 size表示开票的大小
# 每个请求只能占用一个large_client_header_buffers,超过返回414状态码
large_client_header_buffers number size

2.3 client_header参数配置建议

  • 频繁请求的请求头巨大,考虑设置修改client_header_buffer_size大小
  • 偶尔请求的请求头巨大,考虑设置修改large_client_header_buffers。因为这是申请的临时内存,使用完以后会被回收,减少内存占用
  • 不论多少server配置了client_header_buffer_size/large_client_header_buffers,最后这个参数值会选定default_server设定的值作为最终值

2.4 client_max_body_size

可以作用于http、server、location

# 请求体最大正文
# 默认值在64位平台上为512字节
# 如果超过这个配置则会返回413状态异常码
client_max_body_size 512k

2.5 client_body_buffer_size

可以作用于http、server、location

# 请求体内存缓存大小
# 默认值在64位平台上为16k
# 超过设定值则会根据client_body_temp_path 参数写入临时文件
client_body_buffer_size 16k

2.6 client_body_temp_path

可以作用于http、server、location

# client_body超过buffer设定值以后临时文件位置
# 默认位置为client_body_temp
client_body_temp_path client_body_temp

2.7 client_body参数配置建议

为了尽量使用内存避免临时文件的IO读写浪费,最好是将client_body_buffer_size大小设置为与client_max_body_size一致

三:KeepAlive

3.1 keepalive_requests

可以作用于http、server、location

# 连接发出限定数量请求后关闭
# 可以有效清理连接占用内存
# 默认100,不建议设置过大
keepalive_requests 100

3.2 keepalive_timeout

可以作用于http、server、location

# timeout表示连接闲置存活时间
# header_timeout表示在response响应头中增加Keep-Alive: timeout=
keepalive_timeout timeout [header_timeout]

四:location配置

nginx对请求的处理落脚点还是在location上,uri通过规则与location进行匹配。location匹配路径配置方式如下,文中顺序为匹配优先级,即多个location匹配时需要根据优先级决定处理的location

4.1 规则匹配类型

匹配规则 规则描述 优先级别
= 全量匹配,uri必须与location规则一致 1
^~ 前置匹配,uri从左开始前置内容完全与location规则一致 2
~ 正则匹配,支持正则符号匹配 3
~* 正则匹配,忽略大小写 4
/zsl 前置匹配,与^~冲突互斥 5
/ 任何匹配都会成功 6

五:default_type

可以作用于http、server、location

# 指定处理文件类型
default_type application/json;

六:error_page

可以作用于http, server, location, if in location

# 处理指定错误状态码请求
# error_page code ... [=] uri;
# code 指定处理的错误状态码
# = 可以指定修改返回的状态码
# uri 处理该错误的uri重新进行location匹配
error_page 404 /error.html;
location = /error.html {
    root html;
}

文章永久链接:https://tech.souyunku.com/38196

未经允许不得转载:搜云库技术团队 » Nginx(三) -- ngx_http_core_module

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们