1. 正则表达式
1)正则表达式词汇
.:匹配任意单个字符
+:重复匹配1次或多次
*:重复匹配0次或多次
?:使匹配任意。colou?r => color, colour
^:匹配指定开头的字符串
$:匹配指定结尾的字符串
():把多个字符组成一个单元,并在回溯引用中查找匹配
[]:一个字符集,匹配其中任意一个
[^]:反向字符集,匹配没有指定的字符
2.RewriteRule基础
包含3个参数:
RewriteRule Pattern Substitution [Flags]
1)pattern:请求里被规则影响的部分
是一个正则表达式,
2)Substitution:匹配的请求被转送的地址
可以是一个指向资源的文件系统地址,或者网络地址,或者一个绝对的URL。
还可以使用对请求URL匹配部分的回溯引用。
例如:ReqeiteRule “^/product/(.*)/view$” “/var/web/productdb/$1”
当http://example.com/product/r14df/view请求时,被映射到/var/web/productdb/r14df
3)[flags]:重写标记,影响改写请求的配置
3.重写标记(Rewrite Flags)
RewriteRule pattern target [Flag1, Flag2, Flag3]
4.重写条件(Rewrite Conditions)
RewriteCond TestSting Condition [Flags]
RewriteConds里匹配的部分,还可以以%1,%2等变量的方式,在RewriteRule里使用。
End