nginx location中uri的截取
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,这篇文章给大家介绍nginx location中uri的截取,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。说明:location 中的 root 和 aliasroot 指令只是
千家信息网最后更新 2025年12月03日nginx location中uri的截取
这篇文章给大家介绍nginx location中uri的截取,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
说明:
location 中的 root 和 alias
root 指令只是将搜索的根设置为 root 设定的目录,即不会截断 uri,而是使用原始 uri 跳转该目录下查找文件
aias 指令则会截断匹配的 uri,然后使用 alias 设定的路径加上剩余的 uri 作为子路径进行查找
location 中的 proxy_pass 的 uri
如果 proxy_pass 的 url 不带 uri
如果尾部是"/",则会截断匹配的uri
如果尾部不是"/",则不会截断匹配的uri
如果proxy_pass的url带uri,则会截断匹配的uri
Examples
location中的 root
root@pts/1 $ ls -ld /data/web/lctest*|awk '{print $NF}'/data/web/lctest/data/web/lctest2/data/web/lctest3/data/web/lctest4location /lctest { root /data/web/;}location /lctest2/ { root /data/web/;}location /lctest3 { root /data/web;}location /lctest4/ { root /data/web;}curl 测试结果如下
备注: 浏览器输入的时候最后面不添加 / , 会自动补上,但是curl 不行
root@pts/1 $ curl http://tapi.xxxx.com/lctest/hello worldroot@pts/1 $ curl http://tapi.xxxx.com/lctest2/hello world2root@pts/1 $ curl http://tapi.xxxx.com/lctest3/3hello worldroot@pts/1 $ curl http://tapi.xxxx.com/lctest4/hello world4
location alias
location /lctest5 { alias /data/web/;}location /lctest6/ { alias /data/web/;}location /lctest7 { alias /data/web;}## 403 /data/web forbiddenlocation /lctest8/ { alias /data/web;}curl 测试结果如下
curl 'http://tapi.kaishustory.com/lctest5/'curl 'http://tapi.kaishustory.com/lctest6/'curl 'http://tapi.kaishustory.com/lctest7/'结果都是 /data/web/index.html的输出root@pts/1 $ curl 'http://tapi.kaishustory.com/lctest8/'403 Forbidden 403 Forbidden
nginx
location proxy_pass
#--------proxy_pass配置---------------------location /t1/ { proxy_pass http://servers; } #正常,不截断location /t2/ { proxy_pass http://servers/; } #正常,截断location /t3 { proxy_pass http://servers; } #正常,不截断location /t4 { proxy_pass http://servers/; } #正常,截断location /t5/ { proxy_pass http://servers/test/; } #正常,截断location /t6/ { proxy_pass http://servers/test; } #缺"/",截断location /t7 { proxy_pass http://servers/test/; } #含"//",截断location /t8 { proxy_pass http://servers/test; } #正常,截断测试脚本
for i in $(seq 8)do url=http://tapi.xxxx.com/t$i/doc/index.html echo "-----------$url-----------" curl urldone
测试结果
----------http://tapi.xxxx.com/t1/doc/index.html------------/t1/doc/index.html----------http://tapi.xxxx.com/t2/doc/index.html------------/doc/index.html----------http://tapi.xxxx.com/t3/doc/index.html------------/t3/doc/index.html----------http://tapi.xxxx.com/t4/doc/index.html------------/doc/index.html----------http://tapi.xxxx.com/t5/doc/index.html------------/test/doc/index.html----------http://tapi.xxxx.com/t6/doc/index.html------------/testdoc/index.html----------http://tapi.xxxx.com/t7/doc/index.html------------/test//doc/index.html----------http://tapi.xxxx.com/t8/doc/index.html------------/test/doc/index.html
关于nginx location中uri的截取就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
结果
测试
内容
尾部
指令
更多
目录
路径
帮助
不行
不错
原始
兴趣
只是
备注
小伙
小伙伴
文件
文章
时候
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
svn服务器局域网
网络安全法法条测试答案
下面哪些不属于网络技术
维普网络学习资源数据库
天河区正规网络技术开发展示
商品运营管理软件开发
win7数据库自启动
数据库的默认排序规则
身份信息不完善网络安全法
网络安全小说下载
工业服务器开线
网易版我的世界宝可梦剑盾服务器
法国网络技术
五年级下册网络安全教案
天津升腾服务器价格
网络安全理论考试
职中网络技术出来多少月多少钱
网络安全内容十五字
特斯拉数据库
免费无盘服务器
网络安全人人有责绘画模板
在小公司做window服务器
四川浪潮服务器代理
网络安全教育主题图片
确认新建数据库完成双机配置
网络安全是哪个国家提出的
吉安游泳软件开发
深圳公安局网络安全岗
为什么命令窗口打不开数据库
南京短视频电商软件开发