|
|
此方法仅在windows下 IIS+MYSQL+PHP环境中测试过,其他环境未测试过,但原理基本相同。
p1 Q' K2 S6 J8 y( u8 L2 S; ~9 L7 N# O2 N2 ^6 l9 C b
首先是配置Rewrite组件:
% v% }, o( y) x0 x7 Y' f1、将下载的 IIS Rewrite 组件解压,放到适当的目录(如 C:Rewrite)下。: w8 e$ T6 P+ e% X$ ~
* W" V2 B% n# w, H) @4 t2 v' y! ^+ I. i( \' b2 }2 v0 h+ M' i
2、在“IIS管理器”里选择网站,右键,属性。2 i" `8 [0 k. o. F& k9 Y
$ U1 C( V2 i. I+ C* o' `( a. `9 a6 |: Z& n2 ~7 U
3、选择“ISAPI”,点击“添加”。
' p/ [, X9 D4 X9 V
0 h! R4 A: K- F1 ]
/ \$ T0 v& \: u4、填入筛选器名称,如“rewrite”。+ ~5 h: T6 p5 z$ t, v
5 S. `2 o$ x8 f
( z1 w4 g" `+ M! Y# ]. O
5、可执行文件下方点击“浏览”,选择刚才解压的Rewrite组件位置,Rewrite.dll。
" e4 ]! ?* K, e: ]1 R' P
3 v3 V5 z5 V1 o. ~) u$ I
7 V1 U3 K r) F y' P) I* n0 Q6、确认选择正确后,点击“确定”。2 D3 J! l! P6 A L, X
* g3 E7 S" }6 j6 G% E ?2 p
' E+ Q. M; M: c$ n! w7、点击“确定”,完成筛选器添加。, P# m0 j# s: r
! h$ c6 u9 f+ v& U4 D2 V* u& _+ Z
8、重启IIS。8 ?' Y* v% p. F) ^7 J, ~# N1 ~
% `5 W6 z' Q n* ?2 E/ N
: }" @; E, S6 }4 E: P2 Q1 O; q& x4 t- s1 L- r5 { M
5 r% }4 g4 M& ?' I8 o
5 p9 A2 n; Z6 A9 p9、重启IIS后,再次选择站点,右键,属性,看到如下所示向上的绿箭头,说明 IIS Rewrite 成功添加并运行。, ], G$ O' z2 A
+ q# n" ^- J" Z D& q1 d5 Z; ?0 v% S w# q/ Z$ O6 ]" C
IIS Rewrite 规则设置
, {! \! {) O1 w- V5 ^" J解压后的 IIS Rewrite 组件目录(如 C:Rewrite)中,有一个 httpd.ini 文件,将相应规则写入到这个文件中即可,本程序中自带httpd.ini文件,只需将域名改为你的域名即可。
4 Z7 E0 f/ V$ h* ?+ I7 g- x
. X- `8 Z3 l- b* h. p* {8 @然后登录后台,全局-网站功能-URL静态化-是。
2 T2 u' y4 G3 f
1 k9 C9 y( T) ?' \按照上面的方法重启IIS,然后就OK了。
1 r- d8 W! O6 I- _9 E; ^% f
7 o2 M/ k+ o4 L& V! G' a切记,如果是自己架设的服务器,一定要重启IIS,否则可能无效。如果是购买的虚拟空间那就不需要了,因为一般都是linux的空间,所有插件都配置好的。. `8 g1 R- D) i4 |
" }7 [* J' H1 ?. M
httpd.ini文件配置规则:
$ g% p4 o7 o1 j6 ^) N
, x o- H& `8 w. e5 X将read.php?bl_id=123&bu_id=456 伪静态成 /html/123/456.html可以这样写:/ e% N* a( `& T0 M0 i& X7 d5 r6 |
RewriteRule ^(.*)/html/([0-9]+)/([0-9]+).html$ $1/read.php?bl_id=$2&bu_id=$3
! s) J! [, P" r7 m个人备注:
" M7 {* B2 y3 J* b) A {这里的$1, $2, $3就是前一个表达式的匹配值; Y) K. `; B3 {6 R4 a; j
比如:* @. N; {& @) n7 J! U
^(.*)/simple/([a-z0-9_]+.html)$ $1/simple/index.php?$2: ]. g8 D- D& ?* h
中对应的颜色对应相应的值!
; b& g% a+ u7 n3 Y2 Z |
|