|
|
此方法仅在windows下 IIS+MYSQL+PHP环境中测试过,其他环境未测试过,但原理基本相同。
G1 y3 i. s+ Q, S- b5 G8 B s
首先是配置Rewrite组件:7 C4 J& @$ {5 |: }6 ?
1、将下载的 IIS Rewrite 组件解压,放到适当的目录(如 C:Rewrite)下。3 ~1 h7 a2 A7 H
( N) u) _- V( ~$ Z/ k d9 Z& I9 J2 ?
2、在“IIS管理器”里选择网站,右键,属性。; D' h' |7 Z5 s0 x) j5 a/ d
7 [$ t) I: L6 k( q5 K! K5 }% i0 l
1 Z6 B4 N$ [ K/ a
3、选择“ISAPI”,点击“添加”。
" m2 `; R4 n* C, q$ G l) O& M k
8 z' @4 }5 E2 O# u
4 t! q) Y2 |# j! u" k) D; G. ?4、填入筛选器名称,如“rewrite”。# L8 t) N5 }. J- P
9 T- m& B0 g3 ^" i: e# L% V
' ^% Z9 N+ Z0 v: R5、可执行文件下方点击“浏览”,选择刚才解压的Rewrite组件位置,Rewrite.dll。9 U! H9 H c, u7 M# X& P' ]
2 O7 A% u/ C- g! p' O+ G+ s1 i/ Y& ?9 F7 v1 Z% }
6、确认选择正确后,点击“确定”。- l6 L( P' U k! o/ D: k
' X \. ^7 c3 E2 C- `7 h
/ c6 X4 f/ _# W9 c8 D: `: p7、点击“确定”,完成筛选器添加。
3 n g G6 {( I0 ^5 T
9 R1 T! y2 [, b8 x6 K8 m* b* l4 w
+ G2 C# p( G& z4 y# }1 M# M8、重启IIS。2 q( `2 b l) s: w# P+ z0 ` A
, m! E& ^$ Y9 l% {5 D. A! B. A
, @3 P! g6 B8 X5 k4 m) i0 L& c* U) Z) b* ~7 k* u, {! V
; C; c9 }# H; l
$ l: T5 h# ]9 [1 a- N* a4 D9、重启IIS后,再次选择站点,右键,属性,看到如下所示向上的绿箭头,说明 IIS Rewrite 成功添加并运行。
! ?' b9 y' D# ]& e$ P. P4 g
( f! g% f2 Z3 H. S {8 l* C
% V5 A# U/ s. e* r5 E5 yIIS Rewrite 规则设置* _% s7 \. B5 U+ O
解压后的 IIS Rewrite 组件目录(如 C:Rewrite)中,有一个 httpd.ini 文件,将相应规则写入到这个文件中即可,本程序中自带httpd.ini文件,只需将域名改为你的域名即可。$ L3 h# A" }9 Y5 M% S* p9 }
. {* A5 z# |1 \) }3 z: h
然后登录后台,全局-网站功能-URL静态化-是。
5 @/ I9 N8 f6 T% I' X6 ?% _" z1 [/ p6 \3 _. ~5 N D6 h$ F
按照上面的方法重启IIS,然后就OK了。
7 _+ `' s9 X2 W+ J( o( B3 N, G4 Z8 {9 l
切记,如果是自己架设的服务器,一定要重启IIS,否则可能无效。如果是购买的虚拟空间那就不需要了,因为一般都是linux的空间,所有插件都配置好的。3 Z) e5 ^4 ^; l
, O5 ^/ F. g7 E3 phttpd.ini文件配置规则:7 q' r1 Q' ^1 m6 B" t
# Y& b( D( r/ ?/ N9 w0 j2 }) Q
将read.php?bl_id=123&bu_id=456 伪静态成 /html/123/456.html可以这样写:
$ y. |' |6 V7 @- s& @RewriteRule ^(.*)/html/([0-9]+)/([0-9]+).html$ $1/read.php?bl_id=$2&bu_id=$3
G+ ~+ z- F8 K4 [个人备注:
* T/ m! ]% F/ t' m; v. b这里的$1, $2, $3就是前一个表达式的匹配值4 S% M9 ^) C' V7 o7 S2 Z
比如:- u4 A! Z5 S$ S
^(.*)/simple/([a-z0-9_]+.html)$ $1/simple/index.php?$2: l a3 a! O1 D# g
中对应的颜色对应相应的值!' X3 \( V& p# e3 ] R$ R; R' p
|
|