首页 > 数据库技术 > 详细

.htaccess语法中RewriteCond和RewriteRule意义

时间:2015-12-01 23:03:01      阅读:338      评论:0      收藏:0      [点我收藏+]

如果 xxx 匹配ooo 并且

如果 xxx2 匹配ooo 并且

那么 xxx3的访问 应该变为 xxx4

举个例子:

RewriteCond %{REQUEST_URI} ^.*$
RewriteCond %{REQUEST_URI} ^/(?!pic).*$
RewriteRule ^(.*)$ /frontend/web/$1

代码解释:

如果 字符串 %{REQUEST_URI} 是 除 "\n"以外的字符开头,并且出现零次或多次,并且除 "\n"以外的字符结尾

如果 字符串 %{REQUEST_URI} 是以 / 开头 并且斜杠之后不是 pic字符 并且以除 "\n"以外的字符结尾

那么 当前请求的url 符合规则 ^(.*)$ 就让请求地址变为 /frontend/web/$1

假设:

现在的请求是 www.example.com/index.html

第一条 RewriteCond 是符合的 并且

第二条 RewriteCond 是符合的

根据 RewriteRule 请求应该变为 www.example.com/frontend/web/index.html

在这里 %{REQUEST_URI} 就是 /index.html

php的$_SERVER中就有这个key。

再次假设:

现在的请求是 www.example.com/pic/avatar/x.jpg

第一条 RewriteCond 是符合的

第二条 RewriteCond 是不符合的

RewriteRule 不执行 请求依然是 www.example.com/pic/avatar/x.jpg

 

.htaccess语法中RewriteCond和RewriteRule意义

原文:http://www.cnblogs.com/buexplain/p/5011437.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!