|
|
此方法仅在windows下 IIS+MYSQL+PHP环境中测试过,其他环境未测试过,但原理基本相同。; N/ [4 E% S* w/ R
y) ?+ F" s- g, s# |
首先是配置Rewrite组件:
: c1 P+ L5 W4 i7 a `# j2 \1、将下载的 IIS Rewrite 组件解压,放到适当的目录(如 C:Rewrite)下。- r; Q8 i- n. {7 B8 z
! k; v8 y9 x8 x t0 ?
* \3 |) g. r8 M7 h* Y$ s# d5 W( K
2、在“IIS管理器”里选择网站,右键,属性。# F) f4 l3 }' ~" t0 H9 b; t0 J
: G7 U3 J0 f- e- l; | q
) Y/ M6 H1 t' b7 N" }7 z. K/ V% J3、选择“ISAPI”,点击“添加”。 K" T2 h5 D8 [+ V3 H/ r
$ o( U; v3 J5 W# g/ ~3 O! G$ V" G( \
4、填入筛选器名称,如“rewrite”。- j' y' o+ d! t3 Z9 E
6 Y- _3 k+ ?6 h& O
) Y' a8 S- i4 r; o5、可执行文件下方点击“浏览”,选择刚才解压的Rewrite组件位置,Rewrite.dll。; ~0 A# T- N- l# u' `0 E
2 }+ R. |3 _0 W4 Y: k+ E( U) {' l( [+ u# e
6、确认选择正确后,点击“确定”。
$ d! j: \3 b H( U. S8 J
5 q B- a# P; q+ o/ f r+ c' W5 p
% V& q; E" ^ l# w
7、点击“确定”,完成筛选器添加。" a \. r$ j* j; Q+ H3 L% a O
, t' l& {4 }0 V( A; q$ n
6 k, A" X, @% M, S- Q8、重启IIS。4 C# w7 Z# B5 A! U( T0 ~/ u
( w# z. n+ Q& E3 S0 F6 H C7 e
& m* `; A: Y `1 _
7 w8 d- t. J9 o' r$ c' M
7 g& U. b7 B6 Y* P2 \
' e0 |# T7 D7 p; V: u# e. a; h6 a9、重启IIS后,再次选择站点,右键,属性,看到如下所示向上的绿箭头,说明 IIS Rewrite 成功添加并运行。
* m* J& H/ Y$ c% Q: ?+ S8 @* d
" [, e2 v- c# d% i9 V5 c( o2 j# _ `& G+ `" r$ R9 k' R
IIS Rewrite 规则设置# ^7 Y |' b' e: K4 a4 c+ K
解压后的 IIS Rewrite 组件目录(如 C:Rewrite)中,有一个 httpd.ini 文件,将相应规则写入到这个文件中即可,本程序中自带httpd.ini文件,只需将域名改为你的域名即可。
7 N' M2 m! C. \& S" z) R# z4 }" I% O, W: v! j
然后登录后台,全局-网站功能-URL静态化-是。
/ Q) [. Q1 Q6 }4 C1 U/ z% o& U' B2 s8 C+ a5 `( A; M; u" f
按照上面的方法重启IIS,然后就OK了。
% n1 J4 Q7 u) R# }/ K. J% t3 q" {1 r& f2 h" R' A' G2 b
切记,如果是自己架设的服务器,一定要重启IIS,否则可能无效。如果是购买的虚拟空间那就不需要了,因为一般都是linux的空间,所有插件都配置好的。$ ^, P- s$ l; X" b+ M, ~# R
0 y; x+ Q1 m* p5 Mhttpd.ini文件配置规则:
# T, S, s/ I, F& C5 ^( C) ^9 h: I% Z7 u* O. N. X) a6 s
将read.php?bl_id=123&bu_id=456 伪静态成 /html/123/456.html可以这样写:
; T [3 O) z1 u8 W, b3 rRewriteRule ^(.*)/html/([0-9]+)/([0-9]+).html$ $1/read.php?bl_id=$2&bu_id=$3: ~0 h9 L: l/ I# L$ a& Q: \" A' o
个人备注:
9 C, J/ `1 V# E, q& Y1 S$ {5 h- y0 m* G这里的$1, $2, $3就是前一个表达式的匹配值0 R7 O9 d# w6 o [1 o. C
比如:
9 k f' n& I }* N7 r^(.*)/simple/([a-z0-9_]+.html)$ $1/simple/index.php?$2
. [: T* e p2 C9 c7 d; V中对应的颜色对应相应的值!' `( F2 j- R! ?- Q# ?1 u0 y
|
|