Nginx Location匹配举例
1、
location / {
if (!-f $request_filename){
rewrite ^/(.+)$ /uri.php last;
}
}
优先级最低的匹配,就是说其它所有location都不匹配时执行它,这里用了一个rewrite重定向到根下面的uri.php做处理。(如果uri.php也不存在那就会报404)
2、
location = / {
*****
}
这个貌似和1长得差不多,就差一个=号就差大了,这个是最高优先级的匹配,是绝对匹配。当访问 http://host/ 时就会匹配到2
3、
location ^~ /static/ {
}
^~ 是开头标志,这个匹配以/static/开头的路径,如 http://host/static/test_12431.html。复杂点可以作伪静态。
4、
location ~ \.(gif|jpg|png|js|css)$ {
}
~ 区分大小写的匹配。这个和3形成对比,3我只管匹配头,4我只管匹配尾部。这个匹配的意思就是所有以.gif,.jpg……结尾的文件,也就是静态文件,这个可以做公共资源的服务端缓存(虽然客户端的浏览器一般也做了)。
5、
location ~* \.png$ {
}
~*不分大小心匹配png格式的文件。可以匹配到 XXXXXX.png,XXXXXX.PNG,XXXXXX.Png,XXXXXX.pNg……
6、
location = /mob_api/session/device_login {
}
这个会绝对匹配到 /mob_api/session/device_login 这个路径(an手机游戏项目的一个登陆地址……)
先说这么多,了解了操作符,熟悉了正则,各种匹配。 但是每次只有一个location会被匹配到,具体优先级参看Nginx的Location配置语法介绍、优先级说明
Nginx Location匹配举例的更多相关文章
- nginx location匹配顺序及CI框架的nginx配置
Nginx location匹配顺序如下: 用前缀字符串定义的location规则对URI进行匹配测试. =号定义了精确的前缀字符串匹配,如果发现精确匹配则使用当前规则.否则继续下一步匹配. 匹配其它 ...
- nginx location匹配及rewrite规则
location匹配规则 1. 实例 server{ location = \ { [配置A] } location / { [配置B] } location = /images/ { [配置C] } ...
- Nginx location 匹配顺序整理
Nginx location模块整理 具体的Nginx安装就不在这里描述了,这里只是为了对location的描述 Nginx环境 a. 查看当前系统cat /etc/redhat-release [r ...
- nginx location匹配规则
谢谢作者的分享精神,原文地址:http://www.nginx.cn/115.html location匹配命令 ~ #波浪线表示执行一个正则匹配,区分大小写~* #表示执行一个正则匹 ...
- 转:nginx location匹配规则
location匹配命令 ~ #波浪线表示执行一个正则匹配,区分大小写~* #表示执行一个正则匹配,不区分大小写^~ #^~表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配 ...
- Nginx Location 匹配
location匹配命令 ~ #波浪线表示执行一个正则匹配,区分大小写~* #表示执行一个正则匹配,不区分大小写^~ #^~表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配 ...
- nginx——location匹配流程图
location匹配流程图 location理解 1.收到url请求后,nginx首先进行精确匹配(有“=”的为精确匹配),如果匹配成功,则直接返回精确匹配结果,如果没有命中则会继续向下进行普通匹配 ...
- Nginx——location匹配与在配置中的优先级
1. location表达式类型 location ^~ /api/v7/ { proxy_next_upstream http_404 http_500 http_502 http_503 http ...
- nginx location 匹配的规则
nginx 的配置文件中, server里面的location 的配置项的理解: server { listen 24010; client_max_body_size 30M; location = ...
随机推荐
- Codeforces 626E Simple Skewness 「数学」「二分」
题意: 给你一堆无序数,寻找它的一个子堆,使得子堆的平均数减中位数最大. 数字的个数n<=2e5 0<=xi<=1e6. 思路: 首先可以证明这堆数一定是奇数个,证明方法是尝试在奇数 ...
- java边界布局管理器
public class BorderLayoutPosition extends JFrame{ String[] border={BorderLayout.CENTER,Border ...
- Nginx作为静态内容服务器(Windows环境)
1.简单安装 1)下载 http://nginx.org/en/download.html 2)解压后的路径 E:\Study\nginx\nginx-1.7.6 3)执行nginx.exe,访问ht ...
- ListView中item的最外层使用margin属性失效
参考文章:http://stackoverflow.com/questions/16278159/why-linearlayouts-margin-is-being-ignored-if-used-a ...
- (转)C# SSL-X509使用
X.509 给出的鉴别框架是一种基于公开密钥体制的鉴别业务密钥管理.一个用户有两把密钥:一把是用户的专用密钥(简称为:私钥),另一把是其他用户都可得到和利用的公共密钥(简称为:公钥).该鉴别框架允许用 ...
- JQuery基础教程:选择元素(下)
DOM遍历方法 利用前面介绍的jQuery选择符取得一组元素,就像是我们在DOM树中纵横遍历再经过筛选得到的结果一样.如果只有这一种取得元素的方式,那我们选择的余地从某个角度讲也是很有限的.很多情 ...
- Redis多机功能之复制
复制的目的:创建具有相同数据库的拷贝服务器:扩展系统处理读请求的能力: 复制的定义 Redis的复制(replication)功能允许用户根据一个Redis服务器来创建任意多个该服务器的复制品,其中被 ...
- C# ToolStripProgressBar
ToolStripProgressBar 将所有 ToolStrip控件的移动和渲染功能和其典型的进程跟踪功能结合在一起.ToolStripProgressBar通常放在StatusStrip中,偶尔 ...
- apk重新签名
re-sign.jar中后自动去除签名这个方法,经试验不可用! 1.去除准备重新签名SinaVoice.apk软件本身的签名 将apk文件后缀改为.zip,然后从winrar中删除META-INF文件 ...
- Oracle数据库(2)
; select ename,empno,deptno from emp where job='CLERK'; select * from emp where comm>sal; select ...