nginx配置文件中$request_uri到底是指的url里哪部分

经过反复测试,结合在 log 里添加 $request_uri 变量,得出结论,这个 $request_uri 就是完整 url 中刨去最前面 $host 剩下的部分,比如 http://www.baidu.com/pan/beta/test1?fid=3 这个url,去掉 www.baidu.com 剩下的就是了,日志里会看到打印出来的 $request_uri 其实是 /pan/beta/test1?fid=3。如果只访问 www.baidu.com,$request_uri里也会有个/的。

if ($request_uri ~* "^/$") 表示url中只有域名,后面不跟任何东西,比如www.baidu.com。

if ($request_uri ~* "test") 表示域名后面那串儿只要包含test这个关键词,就可匹配成功。比如www.baidu.com/pan/beta/test3。

posted @ 2021-11-18 22:38  幻月无名  阅读(1796)  评论(0编辑  收藏  举报