~ 模糊匹配,区分大小写
~* 不区分大小写
!~ 不匹配
= 精确匹配
# 如果用户浏览器是 Internet Explorer(User-Agent 包含 MSIE),则将请求重写到 /msie/ 目录下。
if ($http_user_agent ~ MSIE) {
rewrite ^(.*)$ /msie/$1 break;
}
# 从 Cookie 中匹配 id=xxx 的值,并存入变量 $id。
if ($http_cookie ~* "id=([^;]+)(?:;|$)") {
set $id $1;
}
# 如果请求方法是 POST,直接返回 HTTP 405(Method Not Allowed)。
if ($request_method = POST) {
return 405;
}
# 如果 $slow 变量为真(需在其他地方定义),限制响应速率为 10KB/s。
if ($slow) {
limit_rate 10k;
}
# 如果 $invalid_referer 为真(请求来源不在白名单内),返回 HTTP 403(Forbidden)。
if ($invalid_referer) {
return 403;
}