linux系统nginx工具location指令

location指令

      • 适用区块
      • 三个区块
      • location 区段
      • location 前缀
      • location优先级
      • root指令和alias指令的区别

适用区块

server

三个区块

Nginx 的 HTTP 配置主要包括三个区块

http { 						# 这个是协议级别include mime.types;default_type application/octet-stream;keepalive_timeout 65;gzip on;server {			 # 这个是服务器级别listen 80;server_name localhost;location / {  # 这个是请求级别root html;index index.html index.htm;}}
}  

location 区段

location是在server块中配置,根据不同的URI使用不同的配置,来处理不同的请求。
location是有顺序的,会被第一个匹配的location处理。语法:location [=|~|~*|^~|@] pattern{……}

location 前缀

=    表示精确匹配,优先级也是最高的,精确到文件^~   表示uri以某个常规字符串开头,理解为匹配url路径 ~    表示区分大小写的正则匹配  
~*   表示不区分大小写的正则匹配!~   表示区分大小写不匹配的正则
!~*  表示不区分大小写不匹配的正则/    通用匹配,任何请求都会匹配到@    内部服务跳转
没有修饰符 表示:必须以指定模式开始location / {root /usr/share/nginx/html;index index.html;}
= 表示:必须与指定的模式精确匹配location = /test/index.html {root /usr/share/nginx/html;index index.html;}
~ 表示:指定的正则表达式要区分大小写location ~ / {root /usr/share/nginx/html;index index.html;return 301 https://www.jd.com;}
~* 表示:指定的正则表达式不区分大小写location ~* / {root /usr/share/nginx/html;index index.html;return 301 https://www.jd.com;}
^~ 表示:是以指定模式开始,匹配url路径location ^~ /test/index.html {root /usr/share/nginx/html;index index.html;}
@ 表示:定义命名location区段,这些区段客户段不能访问,只可以由内部产生的请求来访问,必须和try_files配合使用#寻找/usr/share/nginx/html/index.html找不到就返回@error的值409location / {root /usr/share/nginx/html;index index.html;try_files /index.htm @error;        }location @error {return 409;}

location优先级

带有“=“的精确匹配优先
没有修饰符的精确匹配
正则表达式按照他们在配置文件中定义的顺序
带有“^~”修饰符的,开头匹配
带有“~” 或“~\*” 修饰符的,如果正则表达式与URI匹配
没有修饰符的,如果指定字符串与URI开头匹配
= 大于 ^~  大于 ~|~*|!~|!~* 大于 /
多个location配置的情况下匹配顺序为:首先匹配 =,其次匹配^~, 其次是按正则匹配,最后是交给 / 通用匹配。当有匹配成功时候,停止匹配,按当前匹配规则处理请求。
================================================
(1) =:表示完全匹配;
(2) ^~:匹配URI的前缀,并且后面的正则表达式不再匹配,如果一个URI同时满足两个规则的话,匹配最长的规则;
(3) ~:匹配正则表达式,大小写敏感;
(4) ~*:匹配正则表达式,大小写不敏感;
优先级:(1)> (2) > (3) = (4)

root指令和alias指令的区别

alias 是一个目录别名的定义,

root 则是最上层目录的定义。

alias后面必须要用“/”结束,否则会找不到文件的,而root则可有可无

例如:
location /img/ {alias /var/www/image/;
}
#若按照这种配置的话,则访问/img/目录里面的文件时,ningx会自动去/var/www/image/目录找文件location /img/ {root /var/www/image;
}
#若按照这种配置的话,则访问/img/目录下的文件时,nginx会去/var/www/image/img/目录下找文件

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

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

相关文章

为什么要将应用微服务化

上古时期的高可用架构 其实在十多年前,“架构师”并不是一个需求很大的职业,一来那时还没有“全民App”级别的应用,除了三大门户网站以外,其他的网上应用业务压力并不大;二来也没有现如今这么丰富的技术选型,几乎清一…

LINUX基础培训九之网络管理

前言、本章学习目标 了解LINUX网络接口和主机名配置的方法熟悉网络相关的几个配置文件了解网关和路由熟悉网络相关的命令使用 一、网络IP地址配置 在Linux中配置IP地址的方法有以下这么几种: 1、图形界面配置IP地址(操作方式如Windows系统配置IP&…

es查询单字段去重

1 环境 es 7.10 2 去重方式 2.1 collapse功能 注意:使用此方式去重时,不会去除掉不存在去重字段的数据。去重字段只能是数字类型或keyword。 对text字段进行去重将报错,报错如下。 "unknown type for collapse field xxx,only keyw…

快速入门Torch构建自己的网络模型

真有用构建自己的网络模型 读前必看刚学完Alex网络感觉很厉害的样子,我也要搭建一个可以看着网络结构实现上面的代码你已经很强了,千万不要再想实现VGG等网络!!!90%你能了解到的模型大佬早已实现好,直接调用…

MFC CAsyncSocket类作为客户端示例

之前写过CAsyncSocket类使用的博客;进一步看一下; VS新建一个MFC 对话框工程; 添加一个类,从CAsyncSocket继承,起个自己的名字; 对话框添加几个编辑框,按钮,静态控件; 为自己的CxxxAsyncSocket类添加重写的虚函数,OnConnect、OnReceive、OnSend; 自己的CAsyncSoc…

pytorch一致数据增强—独用增强

前作 [1] 介绍了一种用 pytorch 模仿 MONAI 实现多幅图(如:image 与 label)同用 random seed 保证一致变换的写法,核心是 MultiCompose 类和 to_multi 包装函数。不过 [1] 没考虑各图用不同 augmentation 的情况,如&am…

如何使用ActiveMQ

ActiveMQ是Apache的一款开源消息总线,主要用来做消息的分发。使用ActiveMQ,通常需要以下步骤: 一、启动ActiveMQ 首先需要下载ActiveMQ,然后进行启动。启动后,可以在控制台创建队列,初始用户名和密码通常…

生物制药厂污水处理需要哪些工艺设备

生物制药厂是一种特殊的工业场所,由于其生产过程中涉及的有机物较多,导致废水中含有高浓度的有机物和微生物等污染物,因此需要采用一些特殊的工艺设备来进行污水处理。本文将介绍生物制药厂污水处理中常用的工艺设备。 首先,对于生…

【面试合集】说说微信小程序的支付流程?

面试官:说说微信小程序的支付流程? 一、前言 微信小程序为电商类小程序,提供了非常完善、优秀、安全的支付功能 在小程序内可调用微信的API完成支付功能,方便、快捷 场景如下图所示: 用户通过分享或扫描二维码进入商…

2024年华数杯国际赛赛题浅析

21号完赛,28号出成绩的华数杯国际赛,作为美赛最合适的练手赛正式开赛。为了让大家更好地比赛,首先为大家带来本次竞赛两道题目的浅要解析。主要分析两道题目适合的群体,未来大家求解过程中可能遇到的问题。方便大家快速完成选题。…

农业四情监测管理系统的特点优势

TH-Q2农业四情监测管理系统是一种利用现代信息技术,对农业生产中的墒情、苗情、虫情、灾情进行实时监测和管理的智能化系统。那么,这个系统到底有哪些特点和优势呢?让我们一起来了解一下。 1.实时监测:通过传感器、摄像头等设备&a…

美国智库发布《用人工智能展望网络未来》的解析

文章目录 前言一、人工智能未来可能改善网络安全的方式二、人工智能可能损害网络安全的方式三、人工智能使用的七条建议四、人工智能的应用和有效使用AI五、安全有效地使用人工智能制定具体建议六、展望网络未来的人工智能(一)提高防御者的效率&#xff…

DWM1000 MAC层

DWM1000 MAC层 MAC层 概述 MAC层,即媒体访问控制层,是数据通信协议栈中的一个重要部分,位于链路层的下半部分,紧邻物理层。在OSI模型中,它属于第二层,即数据链路层的一部分。MAC层的主要职责是控制如何在…

vue3使用element-plus 树组件(el-tree)数据回显

html <el-tree ref"treeRef" :data"data" show-checkbox :default-expand-all"false" node-key"id" highlight-current:props"defaultProps" check"handleCheckChange" /> js // 编辑按钮 let Jedit (r…

基于单片机的集中供热监控电路设计

一、摘要 随着城市化进程的加快&#xff0c;集中供热系统在城市居民生活中扮演着越来越重要的角色。为了确保供热系统的稳定运行&#xff0c;提高供热效率&#xff0c;降低能耗&#xff0c;本文设计了一种基于单片机的集中供热监控电路。该电路主要包括温度传感器、压力传感器…

安装 jupyter 运行python代码教程分享

要在Windows系统上安装和使用Jupyter Notebook运行Python代码&#xff0c;您可以按照以下步骤进行&#xff1a; 安装Jupyter Notebook&#xff1a; 使用Pip&#xff1a;在全局环境中安装Jupyter Notebook&#xff0c;使用命令pip install --user jupyterlab。如果只想安装Jupyt…

框架基础-Maven+SpringBoot入门

框架基础 Maven基础 Maven概述 Maven是为Java项目提供项目构建和依赖管理的工具 Maven三大功能 - 项目构建构建&#xff1a;是一个将代码从开发阶段到生产阶段的一个过程&#xff1a;清理&#xff0c;编译&#xff0c;测试&#xff0c;打包&#xff0c;安装&#xff0c;部署…

运筹说 第46期 | 目标规划-数学模型

经过前几期的学习&#xff0c;想必大家已经对线性规划问题有了详细的了解&#xff0c;但线性规划作为一种决策工具&#xff0c;在解决实际问题时&#xff0c;存在着一定的局限性&#xff1a;(1)线性规划只能处理一个目标&#xff0c;而现实问题往往存在多个目标&#xff1b;(2)…

GEE时序——利用sentinel-2(哨兵-2)数据进行地表物候学分析(时间序列平滑法估算和非平滑算法代码)

简介 哨兵-2A/B 串联卫星的空间分辨率高、重访时间长,有可能改进对陆地表面物候的检索。不过,生物群落和区域特征在很大程度上限制了陆表物候学算法的设计。在北极地区,这种生物群落特有的特征包括长期积雪、持续云层覆盖和生长季节短暂。在此,我们评估了哨兵-2 获取北极高…

【jupyter添加虚拟环境内核(pytorch、tensorflow)- 实操可行】

jupyter添加虚拟环境内核&#xff08;pytorch、tensorflow&#xff09;- 实操可行 1、查看当前状态(winR&#xff0c;cmd进入之后)2、激活虚拟环境并进入3、安装ipykernel5、完整步骤代码总结6、进入jupyter 添加pytorch、tensorflow内核操作相同&#xff0c;以下内容默认已经安…