30 Jul 2018
nginx支持在location的匹配里面直接匹配parameter,但是可以使用$request_uri或$args匹配parameter,然后使用error_page或者rewrite的方式达到这个效果。Stack Overflow 参考文档
$request_uri或$args匹配parameter访问www.abc.com?testip=1.2.3.4,因为含有testip这个parameter,则做出相应动作。
server {
...
location @testip {
some_nginx_logic_here;
}
location / {
error_page 301 = @testip;
if ($args ~ .*testip=.*) {return 301;}
...
}
}