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语句

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

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Drupal表单实例教程[通俗易懂]

    Drupal表单实例教程[通俗易懂]Drupal表单实例教程form_example.info文件name=Formexampledescription=ExamplesofusingtheDrupalFormAPI.package=Examplemodulescore…

    2022年5月25日
  • js统一全局变量

    js统一全局变量      前言:js中难免要用到全局变量,但是过多的全局变量会影响js的性能,在此我创造了一个统一全局变量的写法,只需要这一个全局变量即可/***全局变量管理器*/varoverallManager=(function(){ //存储全局变量,闭包保护不受污染 varoverall={}; /** *@paramname *…

    2022年5月28日
  • 哥哥[通俗易懂]

    哥哥[通俗易懂]哥哥

    2022年4月23日
  • IntelliJ IDEA 2021.4 Beta激活码(破解版激活)

    IntelliJ IDEA 2021.4 Beta激活码(破解版激活),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月16日
  • HTTP和HTTPS的区别,有什么优缺点「建议收藏」

    HTTP和HTTPS的区别,有什么优缺点「建议收藏」http和https:http就是超文本传输协议的缩写,用于从网站服务器传输数据到上网者的本地浏览器的协议https就是在http的基础加上了SSL或者其他的加密方式,所以这就是最主要的区别。原因:因为http在传输的时候是以明文的方式传输数据,这样的话在传输过程中如果被截获就能直接读取信息,所以并不安全,因此需要通过某种方式加密。怎样解决http不安全的问题呢?解决方法就是在http的基础上加上了SSL协议SSL,安全套接字协议,他是靠证书来验证服务端的身份,并在本地

    2022年8月31日
  • 修改asmx样式

    修改asmx样式今天看到一张图,asmx的WebService。长这样:当时就感觉有意思,这个页面风格和我们平时的不一样,我们平时的WebService长这样:我们如果在WebMetohd上面加注释,即[WebMethod(Description=”注释”)],那么长这样:那么问题就来了,第一张图里面的样式是如何实现的呢?在浏览器上进入调试模式观察,可以发现它的html和我们的有点不…

    2022年4月29日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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