Apache URL改写

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

你可能感兴趣的:(Apache URL改写)