由于nginx配置不支持嵌套if的写法,也不支持and or 这些写法,通过变相方式实现。
以下场景是,域名绑定了泛域名,要求如果域名是
*.city.domain.com 就禁止post ,如果不是就全部允许
set $refuse_post 0;
if ( $host ~* (.*)\.city\.(.*) )
{
set $refuse_post "${refuse_post}1";
}
if ( $request_method = POST ) {
set $refuse_post "${refuse_post}2";
}
if ( $refuse_post = "012" ) {
return 404;
}
标签: 正则表达式
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://www.isres.com/nginx/225.html