Nginx解析:入门笔记

news2024/9/21 16:16:37

🌈 个人主页:danci_
🔥 系列专栏:《设计模式》《MYSQL》
💪🏻 制定明确可量化的目标,坚持默默的做事。


  

✨欢迎加入探索nginx之旅✨

    👋 大家好!文本学习和探索Nginx配置。✨欢迎踏入Nginx的奇妙世界!作为高性能Web服务器与反向代理的佼佼者,Nginx以它的轻量级、高并发处理能力,在全球范围内赢得了无数开发者的青睐。💡今天,就让我们一同揭开Nginx的神秘面纱,探索它如何为网站加速,赋能云端。

一、基本语法

location指令的基本语法如下:

location [=|~|~*|^~] uri { ... }

  • [=|~|~*|^~]:这部分是可选的修饰符,用于指定匹配的类型。
    • =:表示精确匹配。如果请求的URI与location后指定的字符串完全相等,则匹配成功。
    • ~:表示区分大小写的正则匹配。
    • ~*:表示不区分大小写的正则匹配。
    • ^~:表示URI以某个常规字符串开头,如果匹配成功,则不再进行正则表达式匹配。
  • uri:待匹配的请求字符串,可以是不包含正则表达式的标准URI,也可以是包含正则表达式的正则URI。

二、常见配置及作用

 

  1. 精确匹配(=
    • 作用:当请求的URI与location后指定的字符串完全相等时,直接应用该location块中的配置。
    • 示例:location = / { ... } 表示只有当请求的URI恰好为/时,才会应用该配置。
  2. 正则匹配(~ 和 ~*
    • 作用:通过正则表达式来匹配请求的URI,~区分大小写,~*不区分大小写。
    • 示例:location ~ \.(gif|jpg|png)$ { ... } 表示匹配所有以.gif.jpg.png结尾的请求,并执行相应配置。
  3. 前缀匹配(无修饰符和^~
    • 无修饰符:表示请求的URI以指定的字符串开头。Nginx会首先检查所有无修饰符的location块,并记录最长的匹配结果,然后才会进行正则匹配。
    • ^~:与无修饰符类似,也是前缀匹配,但如果匹配成功,则不再进行正则表达式的匹配。
    • 示例:location ^~ /images/ { ... } 表示匹配所有以/images/开头的请求,并且一旦匹配成功,将不再检查后续的正则表达式匹配。
  4. 根匹配(/
    • 作用:作为默认匹配,当没有任何其他location块匹配成功时,Nginx会使用根匹配(即/)来处理请求。
    • 示例:location / { ... } 表示匹配所有未被其他location块匹配的请求。

三、其他相关配置

location块中,还可以配置各种指令来控制请求的处理方式,如:

  • root:设置请求的根目录,Nginx将在这个目录下查找请求的资源。
  • alias:设置请求的别名目录,与root不同,alias会将请求的URI替换为指定的路径。
  • index:指定默认索引文件的名称,当请求的是一个目录时,Nginx会尝试返回该目录下的索引文件。
  • proxy_pass:将请求代理到后端服务器。
  • rewrite:重写请求的URI。
  • try_files:尝试不同的文件或路径,直到找到一个存在的文件或目录。

四、匹配优先级

Nginx在处理请求时,会按照以下顺序匹配location块:

  1. 精确匹配(=)。
  2. 前缀匹配(^~),如果匹配成功,则不再进行正则匹配。
  3. 正则匹配(~ 和 ~*),按配置文件中出现的顺序进行匹配。
  4. 前缀匹配(无修饰符),记录最长的匹配结果。
  5. 根匹配(/)。

当找到匹配的location块后,Nginx将停止搜索,并应用该块中的配置来处理请求。

    好了,今天分享到这里。希望你喜欢这次的探索之旅!不要忘记 "点赞" 和 "关注" 哦,我们下次见!🎈

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++ Primer Plus习题】13.2

大家好,这里是国中之林! ❥前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。有兴趣的可以点点进去看看← 问题: 解答: main.cpp #include <iostream> #include "classic.h&quo…

数据同步-Mysql同步到ElasticSearch

Mysql同步到ElasticSearch 数据同步1、定时任务2、双写3、MQ异步写入4、Logstash5、Canal 数据同步 一般情况下&#xff0c;如果做查询搜索功能&#xff0c;使用 ES 来模糊搜索&#xff0c;但是数据是存放在数据库 MySQL 里的&#xff0c;所以说我们需要把 MySQL 中的数据和 E…

身份证识别及信息核验 API 对接说明

身份证识别及信息核验 API 对接说明 本文将介绍一种 身份证识别及信息核验 API 对接说明&#xff0c;它可以通过输入身份证图片 或 姓名和身份证号码&#xff0c;来校验姓名和身份证号的真实性和一致性。本接口用于校验姓名和身份证号的真实性和一致性&#xff0c;您可以通过输…

SOMEIP_ETS_098: SD_ClientService_subscribe_without_method_call

测试目的&#xff1a; 验证当测试器激活DUT的ETS客户端服务模式并发送OfferService消息时&#xff0c;DUT不会尝试订阅每个接收到的OfferService&#xff0c;因为测试器没有发送必要的clientServiceSubscribeEventgroup消息。 描述 本测试用例旨在确保DUT在没有收到clientSe…

SuiNS的成就与未来愿景

是Sui上领先的域名服务&#xff0c;通过用用户友好、易记的域名替换复杂的钱包地址&#xff0c;提升了链上交互。在过去的两年中&#xff0c;SuiNS经过了多次改进和优化&#xff0c;致力于创建易于理解的链上身份。 借鉴社交媒体的常见用法&#xff0c;SuiNS更进一步&#xff…

这样的接口幂等实现我认为最为优雅(防重复提交)

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 &#x1f38f;&#xff1a;你只管努力&#xff0c;剩下的交给时间 &#x1f3e0; &#xff1a;小破站 这样的接口幂等实现我认为最为优雅 基于token(和网上大部分不一样)对比构思需要幂等性的场景不需…

【无人机设计与控制】用于四轴飞行器仿真和控制系统设计的参数驱动的 Simulink 模型

摘要 本文介绍了一种用于四轴飞行器仿真和控制系统设计的参数驱动Simulink模型。该模型通过参数化设置&#xff0c;允许用户对四轴飞行器的关键性能参数&#xff08;如质量、转动惯量、推力系数等&#xff09;进行调整&#xff0c;从而研究不同参数对飞行器性能的影响。通过此…

安全管理体系化的智慧油站开源了。

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒&#xff0c;省去繁琐重复的适配流程&#xff0c;实现芯片、算法、应用的全流程组合&#xff0c;从而大大减少企业级应用约95%的开发成本。用…

论文学习:常用的遥感参数

文章目录 归一化植被指数&#xff08;NDVI&#xff09;归一化红外指数7&#xff08;NDII7&#xff09;温度植被干旱指数&#xff08;TVDI&#xff09;归一化燃烧指数&#xff08;NBR&#xff09;差分归一化燃烧指数&#xff08;dNBR&#xff09;植被覆盖率&#xff08;VFC&…

2万字长文,如何成为一个“懂”AI 的产品经理?

产品经理比起大模型产品&#xff0c;更应该关注大模型本身。 注&#xff1a;随着时间推移&#xff0c;文章中的结论可能会发生变化。 此外&#xff0c;本文面向的读者是非算法团队的产品经理&#xff0c;为了保障文章的可读性&#xff0c;可能会省略部分细节&#xff0c;同时…

值得入手的 5 大数据恢复软件,数据恢复那是又快又全!

在日常工作与生活中&#xff0c;数据丢失的情况屡见不鲜。诸如重要文件的不慎误删、电脑系统的骤然崩溃、存储设备受病毒侵袭、格式化操作的失误等&#xff0c;此类突发状况常令人猝不及防。在此情形下&#xff0c;数据恢复软件便成为挽救重要数据的关键利器。 今天&#xff0c…

GMT绘图笔记:在地图上绘制直线而不是大圆弧

问题&#xff1a;利用GMT地图上绘制两点之间的直线&#xff0c;如果跨度过大会出现大圆弧线&#xff0c;而通常在备注地图图例的时候&#xff0c;通常需要强制绘制为直线。 在GMT&#xff08;Generic Mapping Tools&#xff09;中&#xff0c;使用plot命令绘制大跨度的范围线段…

全球数字化转型的前沿指南:企业架构师的TOGAF必备手册

领先数字化转型的权威声音 作为数字化转型领域的先驱&#xff0c;The Open Group 与 AZone 联手为全球的数字化专业人才提供了一本无与伦比的参考指南。《信息架构&#xff1a;商业智能&分析与元数据管理参考模型》不仅汇集了全球最先进的数据管理与信息架构理念&#xff0…

【生日视频制作】集装箱红色货车大卡车身AE模板AE模板修改文字软件生成器教程特效素材【AE模板】

生日视频制作教程集装箱红色货车大卡车身AE模板修改文字特效广告生成神器素材祝福玩法AE模板工程 怎么如何做的【生日视频制作】集装箱红色货车大卡车身AE模板AE模板修改文字软件生成器教程特效素材【AE模板】 生日视频制作步骤&#xff1a; 下载AE模板 安装AE软件 把AE模板导…

【数据结构】——原来排序算法搞懂这些就行,轻松拿捏

前言&#xff1a;快速排序的实现最重要的是找基准值&#xff0c;下面让我们来了解如何实现找基准值 基准值的注释&#xff1a;在快排的过程中&#xff0c;每一次我们要取一个元素作为枢纽值&#xff0c;以这个数字来将序列划分为两部分。 在此我们采用三数取中法&#xff0c;也…

滑动窗口——优选算法

个人主页&#xff1a;敲上瘾-CSDN博客 个人专栏&#xff1a;游戏、数据结构、c语言基础、c学习、算法 目录 一.滑动窗口算法原理&#xff1a; 二.无重复字符的最长子串 1.题目解析​编辑 2.算法原理 3.代码编写 三.长度最小的子数组 1.题目解析 2.算法原理 3.代码编…

小米红米系列机型 机型代码查询总目录 adb指令查询步骤

小米机型型号与代码 小米系列机型 型号众多。有时候我们在刷机或者下载固件的时候对一些 同型号分版本的机型不太注意下错固件刷机会导致系统故障。手机设备代码虽然在一般情况下用处不大&#xff0c;不过真正到你需要它的时候&#xff0c;又苦于不知道它是什么&#xff0c;以…

Acrobat Pro DC 2023 for Mac/Win:全能型PDF编辑器深度解析

Adobe Acrobat Pro DC 2023作为一款跨平台的PDF编辑器&#xff0c;无论是对于Mac还是Windows用户&#xff0c;都提供了极为全面且强大的PDF处理功能。该软件凭借其卓越的性能和丰富的特性&#xff0c;成为了全球范围内用户处理PDF文档的首选工具。 一、强大的编辑功能 Acroba…

性能分析之MySQL索引实战案例

文章目录 一、前言二、准备三、MySQL索引优化四、MySQL 索引知识回顾五、总结 一、前言 在上一讲性能工具之 JProfiler 简单登录案例分析实战中已经发现SQL没有建立索引问题&#xff0c;本文将一起从代码层去分析为什么没有建立索引&#xff1f; 开源ERP项目地址&#xff1a;…

Windows系统引入全新 Android 体验?快来尝鲜!

听说微软 Windows 11 操作系统引入全新体验 &#xff1a;实时访问 Android 设备图片。 意思就是在Android 设备上捕获了新照片或屏幕截图时&#xff0c;Windows 上立刻收到通知&#xff0c;且可以不用插数据线就能访问。 用Windows连接手机的功能其实早在Windows10就已经有的了…