|
|
此方法仅在windows下 IIS+MYSQL+PHP环境中测试过,其他环境未测试过,但原理基本相同。
6 d. T r5 q' H" U M! H5 f8 ?# ~' c. Z. k% A% C
首先是配置Rewrite组件:
2 G1 ^% z; Z2 J3 [9 q1、将下载的 IIS Rewrite 组件解压,放到适当的目录(如 C:Rewrite)下。6 \/ E! l. p& W- r
3 P1 _; g" ]/ v' l) t U
3 K& ~6 T/ A1 i6 N' H& u. @1 N2、在“IIS管理器”里选择网站,右键,属性。% B5 t) L, z! G
" D- X9 B& w; ]$ m4 E* U
+ H" b4 K) v1 X7 _# _3、选择“ISAPI”,点击“添加”。
4 o0 C( M7 ~% [; h) c
7 g# _! G3 }' c+ _6 E+ ?
9 a" h1 ` D# H4、填入筛选器名称,如“rewrite”。; Z7 H: {% u4 a! C% v: X# T3 j; X
- }" Z% ~$ }7 J' K- R; o$ C
- @4 }6 U# ~! |* K5、可执行文件下方点击“浏览”,选择刚才解压的Rewrite组件位置,Rewrite.dll。
/ t. P3 e$ e+ h6 b, n
2 J. p5 P V. i( ?7 h O" W z" t, u( \0 e4 P
6、确认选择正确后,点击“确定”。1 t1 q( ^, ]9 V* x4 z% h
2 Q5 B$ I. y1 ~
2 V8 p0 f5 }/ k6 ^9 T8 R- j
7、点击“确定”,完成筛选器添加。
4 H! K" h+ e* u" o+ y& M U
, y& H( N0 H% i, [, M" ]6 H) }! j5 f- ~2 e
8、重启IIS。
, X7 }/ p- g' R: @; e3 Y$ }( Z. {
& @1 g- B1 z- x1 g
' T" j2 M6 E' e. T0 o
$ v3 o1 o6 a1 @% a5 t% [
3 c' @2 p- t, ]. Q1 i7 P8 f' p4 r8 x* M+ K- m1 B8 e' s
9、重启IIS后,再次选择站点,右键,属性,看到如下所示向上的绿箭头,说明 IIS Rewrite 成功添加并运行。
5 d; J! {7 k8 E
( B8 R2 P9 E$ t$ f# K
* U; H* E6 d; XIIS Rewrite 规则设置4 Z! T2 N3 p! e
解压后的 IIS Rewrite 组件目录(如 C:Rewrite)中,有一个 httpd.ini 文件,将相应规则写入到这个文件中即可,本程序中自带httpd.ini文件,只需将域名改为你的域名即可。5 Y) b2 G: \5 Q/ Q
, T) W; j! Y* I% S4 n然后登录后台,全局-网站功能-URL静态化-是。
$ w) V% O" b* i( |6 I# l" F; s, P& T: Z
按照上面的方法重启IIS,然后就OK了。3 D( [% J* I. o' Y7 R
+ |* p8 U$ Z8 Q
切记,如果是自己架设的服务器,一定要重启IIS,否则可能无效。如果是购买的虚拟空间那就不需要了,因为一般都是linux的空间,所有插件都配置好的。
, d- j9 q2 r% ]: Q
b# }" R$ T1 S5 B! C; thttpd.ini文件配置规则:
$ k# r D) B# }2 T" `! N
3 r8 ~4 N$ B" a9 T# Q& V# k6 i将read.php?bl_id=123&bu_id=456 伪静态成 /html/123/456.html可以这样写:
$ F! I7 P. t: u! H/ f4 RRewriteRule ^(.*)/html/([0-9]+)/([0-9]+).html$ $1/read.php?bl_id=$2&bu_id=$3
( c7 V4 u) h2 Y4 |6 {) b$ T6 p! D) G个人备注:% y# ?+ u' H6 ~5 J! N
这里的$1, $2, $3就是前一个表达式的匹配值- D# a$ \2 L2 I g U
比如:( h( i, N6 _2 _" g# S
^(.*)/simple/([a-z0-9_]+.html)$ $1/simple/index.php?$2
; A L. R0 {6 D6 a$ {中对应的颜色对应相应的值!( W6 K9 ^- \5 M; l% O6 E$ O+ V: I
|
|