我想阻止某个特定网址被访问并返回444错误。
示例:
if ( $request_uri ~ https://subdomain.domain.com/abc/xyzdirector/login.do ) {
return 444;
}
现在这很好用,问题是如果我在浏览器中键入以下URL并更改子目录中的任何大小写,它就不起作用:
示例:
https://subdomain.domain.com/ABC/xyzdirector/login.d
https://subdomain.domain.com/abc/XYZdirector/login.d
https://subdomain.domain.com/abc/xyzdirecTOR/login.d
https://subdomain.domain.com/Abc/XyzDirector/login.d
当我这样做时,网址会被转发并转发。
如何屏蔽此内容?
答案 0 :(得分:2)
您需要不区分大小写的regex location:
location ~* ^/abc/xyzdirector/login\.do$ {
return 444;
}
如果您的配置中有任何其他正则表达位置,请确保将此位置置于可能与此网址匹配的任何其他位置之上。