|
|
此方法仅在windows下 IIS+MYSQL+PHP环境中测试过,其他环境未测试过,但原理基本相同。, w: B k! P% P% u. j
- _0 z+ k& W0 M) i( }. q
首先是配置Rewrite组件:
( e7 C* L1 I0 V1、将下载的 IIS Rewrite 组件解压,放到适当的目录(如 C:Rewrite)下。
9 R0 a1 v) d& a9 k
' w+ J/ |5 I# t; ~
2 h8 h5 g) |/ a2、在“IIS管理器”里选择网站,右键,属性。
1 F5 h6 `! ]0 D" P1 k
6 h+ O' Q% c8 g1 o! [
# l+ K( c+ X1 v9 `6 ^3、选择“ISAPI”,点击“添加”。
, _+ }9 p2 E# D E" }% w" g
" g5 e/ S0 L4 |! o8 w& b0 J
- U. Z7 ]/ S$ s3 c# d8 |4 b4、填入筛选器名称,如“rewrite”。
8 U' v# j5 X% W' W0 U" i) I3 o% D
( I. V+ r- \5 p" n8 Q1 }
4 X3 n3 p2 L/ c: M& n; H3 p# Z5、可执行文件下方点击“浏览”,选择刚才解压的Rewrite组件位置,Rewrite.dll。/ Z: E8 G% R2 O( I% k
" J0 q. |9 r# u% j& s7 w7 a2 \7 m$ F$ l6 X$ i1 }1 I4 f) K6 i
6、确认选择正确后,点击“确定”。
% h0 K& O+ G7 r. U6 d3 |
/ D$ q& n2 A5 r, A1 @/ ]
, F. i7 o4 J" R" J* i/ J
7、点击“确定”,完成筛选器添加。4 i( c" v4 C6 U+ M5 g% ? ]7 m! T/ t
' ?8 W$ q2 F# {
% A: I5 z* E+ l, P) m8、重启IIS。 ^" {' U+ |% `) l- `+ Q
0 k/ k3 T* ]; _, ^7 U) \
: g! S' w3 w: n- l/ D' U- z- l
8 d4 ^" i" r5 o) V& g) z y
! |9 p$ | Q/ _$ a. l5 M- ?% J6 v+ W" p& V
9、重启IIS后,再次选择站点,右键,属性,看到如下所示向上的绿箭头,说明 IIS Rewrite 成功添加并运行。% U9 ]# A. A, g1 F. i5 h
- |5 {- C: d: j+ x4 s
2 s' I; \/ {4 k; Q
IIS Rewrite 规则设置
& U* _3 K( K: n6 a7 U/ R+ s解压后的 IIS Rewrite 组件目录(如 C:Rewrite)中,有一个 httpd.ini 文件,将相应规则写入到这个文件中即可,本程序中自带httpd.ini文件,只需将域名改为你的域名即可。
2 ^! j* S$ \' }8 d5 @
/ A/ ?: Q* t+ w5 r3 m然后登录后台,全局-网站功能-URL静态化-是。7 }. r9 a/ e# t
/ C" M" E8 B' f
按照上面的方法重启IIS,然后就OK了。, {, a% q' _7 \ F5 q
. o8 S3 p( c* {: V* N
切记,如果是自己架设的服务器,一定要重启IIS,否则可能无效。如果是购买的虚拟空间那就不需要了,因为一般都是linux的空间,所有插件都配置好的。
) \8 V' f N/ k5 T! C2 u, F; [! T0 W2 y2 ]- t0 u
httpd.ini文件配置规则:
; Q! i" ?& ^* t# Q$ P( v; [6 y9 E& h7 z' O& P e2 R$ @# e
将read.php?bl_id=123&bu_id=456 伪静态成 /html/123/456.html可以这样写:
8 A! c7 t+ N/ ` d: uRewriteRule ^(.*)/html/([0-9]+)/([0-9]+).html$ $1/read.php?bl_id=$2&bu_id=$3
0 I5 n1 b8 E& |/ t$ ~个人备注:
( A5 S- D1 a- o这里的$1, $2, $3就是前一个表达式的匹配值
4 ^2 Y, V" f* N- U比如:
% N& A2 S) L: ~^(.*)/simple/([a-z0-9_]+.html)$ $1/simple/index.php?$2$ S6 a- ?1 T" f
中对应的颜色对应相应的值!
* z- g( W8 E* N" `* L ~+ O |
|