nginx的优先匹配规则
nginx的优先匹配规则
以=开头表示精确匹配
如 A 中只匹配根目录结尾的请求,后面不能带任何字符串。
^~ 开头表示uri以某个常规字符串开头,不是正则匹配
~ 开头表示区分大小写的正则匹配;
~* 开头表示不区分大小写的正则匹配
/ 通用匹配, 如果没有其它匹配,任何请求都会匹配到
顺序不等于优先级:
(location =) > (location 完整路径) > (location ^~ 路径) > (location ~,~* 正则顺序) > (location 部分起始路径) > (/)
# 第一个必选规则
一般会nginx代理多个tomcat,有一个作为首页,其余的只作为接口相互调用。
location /cms { index.html html proxy_pass http://tomcat:8080; }
第二种是静态,当然也有使用静态做首页的,都是死的,点了也不会跳转的,直接映射本地目录。
location ^~ /static/ { root /webroot/static/; } location ~* \.(gif|jpg|jpeg|png|css|js|ico)$ { root /webroot/res/; }
第三种就是动静分离:
静态服务器放静态资源,nginx做反代:静态服务器访问本地静态资源,开启80端口。
location = / { root /data/www; } nginx web service做代理: location = / { index.html html proxy_pass http://static server:80; }
第四种就是接口调用,nginx代理tomcat。
location /api { proxy_pass http://tomcat:8080/; }
举一个简单的例子优先匹配规则,不能完全模仿生产,开发需求访问www.xxx/cms,如果是*.html的都跳到静态资源,其他的都跳到tomcat pool;当然静态资源和tomcat pool下面都有index.html文件。在自己的测试机试了下可以做到。
[root@www conf.d]# cat admin.conf server { listen 80; server_name localhost; location /cms { root /data/www; } location ~* /cms/.*\.html$ { root /data/222; } }
目录下面的文件内容如下:
[root@www conf.d]# ls admin.conf default.conf.bak [root@www conf.d]# cat /data/222/cms/index.html 2 [root@www conf.d]# cat /data/www/cms/index.html index1
测试访问url:http://172.16.2.24/cms/,看它默认跳转。
测试成功,跟书写顺序无关,优先匹配。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Zabbix监控MySQL小记
监控思路: 先在zabbix主机上面配置好MySQL服务器的信息,添加好zabbix自带的Template App MySQL模版,然后去mysql服务器上安装agent,再添加mysql监控脚本。 主机角色: 192.168.1.244 Zabbix Server3.0.5 192.168.1.221 Zabbix Agent3.0.5 1、搭建Zabbix Server(略过,proxy不考虑) 2、搭建zabbix agent(略过) 3、Zabbix agent 搭建MySQL(略过),添加MySQL模板。 4、监控主机,选择模板略过。 5、zabbix agent端配置。 5.1)数据库给zabbix用户授权(root用户也可以) grant all on *.* to zabbix@'localhost' identified by 'zabbix123'; grant all on *.* to zabbix@'127.0.0.1' identified by 'zabbix123'; #grant all on *.* to zabbix@'192.168.1.244'...
- 下一篇
Oracle 11g R2 备份与恢复
Oracle11gR2Rman备份 1.备份与恢复的定义及分类 备份的定义及分类: 备份就是把数据库复制到转储设备的过程。其中,转储设备是指用于放置数据库副本的磁带或磁盘。通常也将存放于转储设备中的数据库的副本称为原数据库的备份或转储。备份是一份数据副本,从不同的角度分类如下: 从物理与逻辑的角度来分类: 从物理与逻辑的,备份可以分为物理备份和逻辑备份。 物理备份:对数据库操作系统的物理文件(数据文件,控制文件和日志文件)的备份。物理备份又可以分为脱机备份(冷备份)和联机备份(热备份),前者是在关闭数据库的时候进行的,后者是以归档日志的方式对运行的数据库进行备份。可以使用oracle的恢复管理器(RMAN)或操作系统命令进行数据库的物理备份。 逻辑备份:对数据库逻辑组件(如表和存储过程等数据库对象)的备份。逻辑备份的手段很多,如传统的EXP,数据泵(EXPDP),数据库闪回技术等第三方工具,都可以进行数据库的逻辑备份。 从数据库的备份角度分类: 从数据库的备份角度,备份可以分为完全备份和增量备份和差异备份 完全备份:每次对数据库进行完整备份,当发生数据丢失的灾难时,完全备份无需依赖其他...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Hadoop3单机部署,实现最简伪集群
- Mario游戏-低调大师作品
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS关闭SELinux安全模块
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16