某URL通过nginx做反向代理,当前URL中存在问号特殊字符处理方法。
假设URL地址为https://www.whsir.com/index.php?m=api&f=23wh233
符号前使用\进行转义
nginx反向代理location精确匹配,仅暴露固定的URL接口
1 2 3 4 5 6 |
location = /index.php { if ($request_uri !~* ^/index.php\?m\=api\&f\=23wh233$) { return 404; } proxy_pass https://www.whsir.com/index.php?m=api&f=23wh233; } |
如果想在index.php?m=api&f=23wh233后继续匹配,则通过location前缀匹配
1 2 3 4 5 6 |
location ^~ /index.php { if ($request_uri !~* /index.php\?m\=api\&f\=23wh233) { return 404; } proxy_pass https://www.whsir.com; } |
原文链接:nginx反向代理处理问号匹配,转载请注明来源!