php rewriterule 规则,如何将一条RewriteCond 对应多个RewriteRule规则

php rewriterule 规则,如何将一条RewriteCond 对应多个RewriteRule规则RewriteCond是对RewriteRule的条件筛选,一般情况下一个RewriteRule前面有多个RewriteCond,我们想让bbs这个子域名下的链接访问bbs这个目录,而其他子域名则访问web这个子目录,于是有了下面这种写法。RewriteCond%{HTTP_HOST}^bbs.heycode.com$RewriteRule^news-(d+).html$/bbs/news…

大家好,又见面了,我是你们的朋友全栈君。

RewriteCond是对RewriteRule的条件筛选,一般情况下一个RewriteRule前面有多个RewriteCond,我们想让bbs这个子域名下的链接访问bbs这个目录,而其他子域名则访问web这个子目录,于是有了下面这种写法。

RewriteCond %{HTTP_HOST} ^bbs.heycode.com$

RewriteRule ^news-(d+).html$ /bbs/news/view.php?id=$1

RewriteRule ^news-(d+).html$ /web/news/view.php?id=$1

RewriteCond %{HTTP_HOST} ^bbs.heycode.com$

RewriteRule ^news/list-(d+)-(d+).html$ /bbs/news/list.php?id=$1&page=$2

RewriteRule ^news/list-(d+)-(d+).html$ /web/news/list.php?id=$1&page=$2

但是这样看上去也未免太复杂了,规则多了就会写很多次RewriteCond。那么,有没有其他的写法呢,答案肯定是有的。如下

RewriteCond %{HTTP_HOST} !^bbs.heycode.com$

RewriteRule .* – [S=2]

RewriteRule ^news-(d+).html$ /bbs/news/view.php?id=$1

RewriteRule ^news/list-(d+)-(d+).html$ /bbs/news/list.php?id=$1&page=$2

RewriteRule ^news-(d+).html$ /web/news/view.php?id=$1

RewriteRule ^news/list-(d+)-(d+).html$ /web/news/list.php?id=$1&page=$2

这里修改了两处地方

1、在RewriteConf条件前面加了!取反符号,取原先条件的相反条件,

2、在RewriteRule最前面添加了一行 RewriteRule .* – [S=2]

这句,表示中止当前的匹配规则,并跳过下面的两条RewriteRule语句

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/146514.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Java课程设计[通俗易懂]

    Java课程设计[通俗易懂]#1.团队名称、团队成员##团队名称:秃头团队|成员|任务分配|||||林小强(组长)|dao包util包可视化||陈泽役|model包可视化|#2.前期

  • Jenkins(8)构建触发器之定时构建和轮询 SCM「建议收藏」

    Jenkins(8)构建触发器之定时构建和轮询 SCM「建议收藏」前言跑自动化用例每次用手工点击jenkins出发自动化用例太麻烦了,我们希望能每天固定时间跑,这样就不用管了,坐等收测试报告结果就行。jenkins的定时任务是用的crontab语法定时构建语法

  • Mybatis-plus基础知识梳理—-(基础知识)

    Mybatis-plus基础知识梳理—-(基础知识)

  • android菜鸟教程_菜鸟软件下载app

    android菜鸟教程_菜鸟软件下载app相对布局是通过相对定位的方式让控件出现在布局任意位置; 在相对布局中如果不指定控件摆放的位置,那么控件都会被默认放在RelativeLayout的左上角。因此要先指定第一个控件的位置,其他控件为该位置的相对位置;RelativeLayout属性:(使用相对布局属性需要先指定控件的id,其他控件根据该控件的id,来确定相对于该控件的相对位置)示例:xmlversion=”1

    2022年10月30日
  • postgresql 索引类型[通俗易懂]

    postgresql 索引类型[通俗易懂]postgresql提供了B-tree,R-tree,GiST和hash索引类型。不同的索引类型适合特定的查询类型。绝大多数数据库都支持B-tree索引类型,postgresql默认的createindex语句也是创建B-tree索引。 R-tree:R树是一种用于处理多维数据的数据结构,用来访问二维或者更高维区域对象组成的空间数据.R树是一棵平衡树。树上有两类结点:叶子结点和非

  • 基本知识 100136

    基本知识 100136基本知识100136单选题A11.疑为多囊卵巢综合征,行超声检查的最佳时间是pcos超声检查在月经周期或黄体酮撤退后出血的3~5日进行,显示卵巢体积增大,双侧卵巢均有ge;12个直径2~9mm的小卵泡,即卵巢多囊改变。答案:(D)A:月经期B:月经来潮6小时内C:月经前数日D:月经周期的3~5日E:排卵期单选题A12.关于萎缩性阴道炎,叙述正确的是答案:(C)A:萎缩性阴道炎仅见于绝经后女性B:萎缩性阴道炎阴道pH

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号