[转帖]nginx(九)location指令

news/发布时间2024/5/17 18:54:57

一   location

location最佳实践参考

深入理解location匹配规则

一文理清nginx中的location配置

location讲解最好的博客

URL是如何关联location配置块的

①  第一部分

  1. location指令的作用: 是根据'用户请求的URI'来匹配'location',匹配'success'则执行对应的'configure'配置块
  2. 实质: '$uri[不携带查询参数]''location path'进行匹配

  1. ++++++++++++ '几种符号的理解' ++++++++++++
  2. (1) '前缀'匹配
  3. '空':表示'前缀'匹配
  4. '=': 表示'精准'匹配,必须'完全一致才会停止'匹配其它的location
  5. '^~':也是'前缀'匹配,但是如果请求一旦'匹配'后会立即处理,'停止匹配'其它的location
  6. (2) '正则'匹配
  7. '~':区分'大小写'
  8. '~*':不区分大小写
  9. (3) '命名'匹配
  10. 应用场景:'error_page''try_files'指令可以使用
  11. 关注点:什么是'prefix string'?、什么是'regular expression'? --> "对应哪些修饰符"?
  12. ++++++++++++ '优先级问题' ++++++++++++
  13. 注意:不是按照'nginx.conf'配置文件的'location'先后顺序匹配的
  14. (1) 首先'='精准匹配,匹配成功立即'处理并且停止'location继续匹配
  15. (2) 如果没有精准匹配,会进行'前缀匹配'(空和^~),^~匹配上也会立即'处理并且停止'location继续匹配,但是空会'先暂存'结果去匹配
  16. (3) 如果'=''^~'都没有匹配上,暂时'不管空',如果'有正则'匹配
  17. -- 则先看'~*'匹配即停止、没有匹配上则看'~'匹配即停止
  18. (4) 如果没有正则匹配,则就'匹配'之前的'空暂存'结果["最长前缀字符的location"];如果之前的'空'也没有匹配,则返回'404'
  19. 遗留: 什么叫作'最长prefix匹配'? -->多个'空暂存''最长'匹配
  20. 疑惑: 对于'regular expression'是采用'优先'匹配,也就是'第一个匹配到'的就是匹配结果,不考虑'~''~*'优先级吗?

②  第二部分

③  第三部分

最佳案例讲解

++++++++++++++++"解读如下"++++++++++++++++

 

④  第四部分  location @

  1. 1: '修饰符@'用于定义一个'内部' location 块,该块'不能'被外部 client '直接'访问
  2. 2: 只能被 nginx '内部配置指令'所访问:比如 'try_files' 或者'error_page'
  3. 备注:'internal'也是'同样'的效果
  4. ​重定向和请求转发的区别 ​--> "地址栏是否发生变化"

重定向和请求转发的区别 

  1. +++++++++++ @分割线 +++++++++++
  2. location 的'内部跳转'匹配符号'@'
  3. location /index/ {
  4. error_page 404 @index_error;
  5. }
  6. location @index_error {
  7. .....
  8. }
  9. 解读:以 /index/ 开头的请求,如果'现状态码是 404',则会匹配到 @index_error 这条'规则'

 ⑥  location匹配小结 

1)匹配顺序

2)注意事项 

3)建议

⑦  加不加/问题

纠正: '/user''/user/'有区别的 --> /user会'返回301''user/ 重定向'

 

⑧  参考

更详细的正则匹配

nginx 的location详细理解

nginx的正则表达

nginx 下 location 某个文件夹下某类文件

Nginx location 匹配规则

sub_filter

</article>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ulsteruni.cn/article/03540317.html

如若内容造成侵权/违法违规/事实不符,请联系编程大学网进行投诉反馈email:xxxxxxxx@qq.com,一经查实,立即删除!

相关文章

易语言数组 ,索引从 1 开始。

如图:本文来自博客园,作者:__username,转载请注明原文链接:https://www.cnblogs.com/code3/p/18111839

算子量化精度验证技术

算子量化精度验证技术人工智能芯片与自动驾驶

实景三维在数字乡村建设中的重要作用

随着科技的飞速发展,数字乡村建设已成为推动乡村振兴、实现农村现代化的重要途径。实景三维技术作为数字乡村建设的重要支撑,正逐渐在各个领域发挥着不可或缺的作用。本文将从实景三维技术在数字乡村中的应用场景、优势及未来展望等方面进行探讨,以期为数字乡村建设提供有益…

【专题】2023年中国汽车出海研究报告PDF合集分享(附原数据表)

原文链接:https://tecdat.cn/?p=34260 原文出处:拓端数据部落公众号 近年来,我国汽车出口需求旺盛,并保持强劲增长趋势,至2023年一季度,汽车出口总量首超日本,中国汽车“破浪出海”正当时。本报告合集旨在通过梳理中国汽车的出海背景,分析汽车厂商出海的现状及特点,洞…

《从0到1:CTFer成长之路》题目-SQL注入-2

《从0到1:CTFer成长之路》题目 SQL注入-2: 题目类型:web 题目描述:打开靶机,出现下面这种界面:我们访问login.php:我们再访问一下user.php:解题方法:这里我们知道login.php是一个后台管理系统的登陆界面,user.php显示的是一句话,看了一下user.php的源码并没有发现什么…

SQL Server Profilter - 简单使用

介绍 SQL Server Profiler 是一个界面,用于创建和管理跟踪并分析和重播跟踪结果。 这些事件保存在一个跟踪文件中,稍后诊断问题时,可以对该文件进行分析或用它来重播一系列特定的步骤。 使用 SQL Server Profiler Microsoft SQL Server Profiler 是 SQL 跟踪的图形用户界面,…