nginx跳转规则基础知识详解

做运维的都知道,nginx是一款非常轻巧而又强大的web服务端软件,性能非常突出,软件本身体积也很小,较apache相比,nginx有着许多无可替代的优势,那么我们今天就详细的讲解下nginx跳转规则的基础知识。

下面的句子是一段简单的nginx语法规则:

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

针对上面的例子,我来对这段nginx规则里面的每一个符号做一个详细的解释:
= 开头表示精确匹配;
^~ 开头表示uri以某个常规字符串开头,理解为匹配 url路径即可。nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~ /static/ /aa匹配到(注意是空格);
~ 开头表示区分大小写的正则匹配;
~*  开头表示不区分大小写的正则匹配;
!~和!~*分别为区分大小写不匹配及不区分大小写不匹配 的正则;
/ 通用匹配,任何请求都会匹配到;
多个location配置的情况下匹配顺序为(参考资料而来,还未实际验证,试试就知道了,不必拘泥,仅供参考);
首先匹配 =,其次匹配^~, 其次是按文件中顺序的正则匹配,最后是交给 / 通用匹配。当有匹配成功时候,停止匹配,按当前匹配规则处理请求。

下面是一段nginx匹配规则以及详细的解释,具体的规则省略:

location = / {
	#规则A
	#访问根目录/, 比如https://www.dobunkan.com/ 将匹配规则A
}

location = /login {
	#规则B
	#访问 https://www.dobunkan.com/login 将匹配规则B,https://www.dobunkan.com/register 则匹配规则H
}

location ^~ /static/ {
	#规则C
	#访问 https://www.dobunkan.com/static/a.html 将匹配规则C
}

location ~ \.(gif|jpg|png|js|css)$ {
	#规则D
	#访问 https://www.dobunkan.com/a.gif, https://www.dobunkan.com/b.jpg 将匹配规则D和规则E,但是规则D顺序优先,规则E不起作用,而 https://www.dobunkan.com/static/c.png 则优先匹配到 规则C
}

location ~* \.png$ {
	#规则E
	#访问 https://www.dobunkan.com/a.PNG 则匹配规则E, 而不会匹配规则D,因为规则E不区分大小写。
}

location !~ \.xhtml$ {
	#规则F
	#访问 https://www.dobunkan.com/a.xhtml 不会匹配规则F和规则G,https://www.dobunkan.com/a.XHTML不会匹配规则G,因为不区分大小写。规则F,规则G属于排除法,符合匹配规则但是不会匹配到,所以想想看实际应用中哪里会用到。
}

location !~* \.xhtml$ {
	#规则G
	#访问 https://www.dobunkan.com/a.xhtml 不会匹配规则F和规则G,https://www.dobunkan.com/a.XHTML不会匹配规则G,因为不区分大小写。规则F,规则G属于排除法,符合匹配规则但是不会匹配到,所以想想看实际应用中哪里会用到。
}

location / {
	#规则H
	#访问 https://www.dobunkan.com/category/id/1111 则最终匹配到规则H,因为以上规则都不匹配,这个时候应该是nginx转发请求给后端应用服务器,比如FastCGI(php),tomcat(jsp),nginx作为方向代理服务器存在。
}

对于nginx规则,目前中文教程并不多,英语底子不好的很难看的明白,你可以对照上面的讲解逐条尝试,一定会有收获的,当然了,你还需要对你的尝试结果做做总结,这样你才会有进步,在日后的应用中才会得心应手!

资源下载
下载价格10 积分
此资源购买后10天内可下载。1、如果您遇到版本没有及时更新,或者无法下载(请勿重复支付)等问题,请联系客服QQ:125252828 微信号:dobunkan
2、注意:本站资源永久免费更新,标题带“已汉化”字样的属于汉化过的!!!
3、如果您购买前没有注册账户,请自行保存网盘链接,方便后续下载更新
4、1积分等于1元。购买单个资源点立即支付即可下载,无需注册会员。
5、本站支持免登陆,点立即支付,支付成功就就可以自动下载文件了(因部分插件和模板没来得及汉化,如果需要汉化版,请先咨询清楚再买!)。
6、如果不会安装的,或者不会使用的以及二次开发需求,费用另外计算,详情请咨询客服!
7、因程序具备可复制传播性质,所以,一经兑换,不退还积分,购买时请提前知晓!
常见问题
源码、模板插件上传安装提示错误怎么办?
1、本站在打包Wordpress插件或者模板的时候,一般会将官方文档、官方申明、已经其他文件一起打包,因此,大部分插件模板在安装前需要解压缩。 2、强烈推荐服务器使用linux系统,环境推荐 apache2+php+mysql,别给我说你还是你还是使用的windows服务器。。。。
购买后无法下载或者提取码错误怎么办?
请联系客服QQ:125252828 或者微信:dobunkan,由于骚扰信息过多,加好友时请说明原由!
小白建站啥都不会怎么办?
请与客服联系,沟通具体的技术支持。由于搭建环境、调试程序需要花费一些时间,可能会收取一些费用。
怎样催促站长更新?
直接微信或者QQ联系本站客服,提供最新版本号以及软件名称,客服会在第一时间更新,如果超过2-3年未更新的请先联系站长后再确认是否需要下载。
为什么打开链接看不到最新版本?
因为网盘默认是按名称排序,最新版本不一定会排在第一个,请打开链接后点击右上角的“修改日期”,这时候更新列表就会按更新日期排序了。
原文链接:https://www.dobunkan.com/server/210,转载请注明出处。
0

评论0

请先
显示验证码
没有账号?注册  忘记密码?

社交账号快速登录

学课技术网欢迎您的加入!