Nginx学习笔记04URL匹配规则和实际路径

1.1.1. URL匹配规则

匹配规则配置总结:

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


优先级


匹配方式


描述


1最高


=


精确匹配。


2


^~


以字符串开头,纯字符串,不支持正则表达式


3


~*


正则表达式匹配,不区分大小写


3


~


正则表达式匹配,区分大小写


3


!~*


正则表达式不匹配,不区分大小写


3


!~


正则表达式不匹配,区分大小写


4最低


/


通用匹配,匹配所有没匹配前面的条件的路径

当优先级相同的多个location结点都匹配某个请求的URL时,在配置文件中出现位置最靠前的匹配成功。

1.1.2. 实际路径的配置

在处理URL请求时,对应的实际路径存在多种不同的配置。


配置方式


描述


root


nginx服务器的根目录,默认为html目录。

例如:

location /abc/

root  /opt/nginx/html

请求:/abc/1.txt

实际路径:

/opt/nginx/html/abc/1.txt


alias


nginx服务器的根目录,会去掉location中的那一部分。

alias可以使用正则表达式,可以使用location正则表达式中的分组$1,$2,$3等等。

location /abc/

alias  /opt/nginx/html

请求:/abc/1.txt

实际路径:

/opt/nginx/html/1.txt


index


定义首页。可以用空格分隔多个首页文件。

index  index.html  index.jsp  index.php


error_page


错误页面重定向。多种重定向方式。

时间: 2024-08-07 01:35:39

Nginx学习笔记04URL匹配规则和实际路径的相关文章

nginx学习笔记之基于端口的虚拟主机基于主机名的虚拟主机root、alias、index配置

nginx学习笔记之基于端口的虚拟主机基于主机名的虚拟主机root.alias.index配置 实验环境: centos 测试节点IP:172.16.3.101 基于端口的虚拟主机: vim /etc/nginx/nginx.conf # 向里面的http {}里面加入如下内容   server { # server定义一个虚拟主机         listen 8080; # 监听本机所有IP端口8080         server_name www.test.com; # 虚拟主机名为:w

StyleCop学习笔记——默认的规则

在StyleCop中有一些官方自己写好的检测规则下面就是英文的解释 文档规则 1.SA1600:ElementsMustBeDocumented元素必须添加注释 2.SA1601: PartialElementsMustBeDocumented   Partial修饰的成员必须添加注释 3.SA1602:EnumerationItemsMustBeDocumented 枚举必须添加注释 4.SA1603: DocumentationMustContainValidXml  注释必须合法(注释中的

nginx学习笔记之二:nginx作为web server

一.nginx的配置文件:nginx.conf 1.nginx配置文件的结构: main(全局配置段) events {...} http { ... server { location ... {...} location ... {...} ... } server { ... } } 2.配置参数需要以分号结尾,语法格式: 参数名  值1 [值2 ...]; 3.配置文件中还可使用变量: 模块内置变量 用户自定义变量:set var_name value 4.配置文件检查:nginx -t

nginx中的location匹配规则介绍

简要概述 location匹配的几个命令的说明,如下 符号 说明 ~ 波浪线表示执行一个正则匹配,区分大小写 ~* 表示执行一个正则匹配,不区分大小写 ^~ ^~表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配别的选项,一般用来匹配目录 = 进行普通字符精确匹配 @ "@" 定义一个命名的 location,使用在内部定向时,例如 error_page, try_files 具体详情,请参加官方文档 官方文档理解 前缀匹配 前面带有/或者/documents/的为前缀匹配.前缀匹

nginx学习笔记之三:nginx作为反向代理服务器

nginx不仅能作为web server,还具有反向代理.负载均衡和缓存的功能 一.nginx的反向代理和负载均衡功能 1.proxy模块 nginx通过proxy模块实现将客户端的请求代理至上游服务器,此时nginx与上游服务器的连接是通过http协议进行的.nginx在实现反向代理功能时的最重要指令为 proxy_pass,它能够并能够根据URI.客户端参数或其它的处理逻辑将用户请求调度至上游服务器上(upstream server). ⑴proxy_pass URL; 设置后端服务器的协议

nginx学习笔记之一:nginx介绍及其编译安装

Nginx是一款高性能的web服务器.反向代理服务器及电子邮件(IMAP/POP3)代理服务器,具有占用内存少,并发能力强等优点. 一.nginx的功能与特性 1.基本功能及特性 ①作为静态资源的web服务器,能缓存打开的文件描述符: ②作为反向代理服务器,可做缓存.负载均衡: ③支持FastCGI ④模块化,非DSO机制(不能动态装卸载),过滤器gzip,SSI和图像大小调整等 ⑤支持SSL 2.扩展功能: ①基于名称和IP做虚拟主机 ②支持keepalive ③支持平滑配置更新或程序版本升级

Nginx学习笔记14rewrite之(一)permanent永久重定向

Nginx的rewrite功能可以将对一个URL的请求,按照正则表达式的规则,重定向到另一个URL.为了对rewrite功能的permanent永久重定向进行更好的了解,本文使用curl来访问相关的页面. Syntax: rewrite regex replacement [flag]; Default: - Context: server, location, if rewrite  Nginx配置文件中用于配置URL rewrite指令. regex   待匹配的URL正则表达式. repl

WCF学习笔记(基于REST规则方式)

一.WCF的定义 WCF是.NET 3.0后开始引入的新技术,意为基于windows平台的通讯服务. 首先在学习WCF之前,我们也知道他其实是加强版的一个面向服务(SOA)的框架技术. 如果熟悉WebService就会知道WebService是基于XML+XSD,SOAP和WSDL三大技术,当然他也是采用HTTP协议的通信,严格来说WebService是一种面向服务开发的标准.而ASP.NET WebService则是微软平台下的服务. WCF其实一定程度上就是ASP.NET Web Servi

Nginx学习笔记(1)

Nginx配置文件详解: 配置文件参考:http://blog.csdn.net/tjcyjd/article/details/50695922 Nginx虚拟主机(三种方式): 一个server标签就是一个虚拟主机 1.基于域名的虚拟主机.通过域名来区分虚拟主机 ===>应用:外部网站(重要) 小例子: 去掉注释和空白符: egrep -v "#|^$" nginx.conf.default > nginx.conf nginx配置文件: worker_processes