|
|
此方法仅在windows下 IIS+MYSQL+PHP环境中测试过,其他环境未测试过,但原理基本相同。# C( _: |) `& m3 l0 a: Q/ @5 o
2 w6 d" i' j3 V0 d# A- G
首先是配置Rewrite组件:
6 L" C7 f9 c, U1 \) Z1、将下载的 IIS Rewrite 组件解压,放到适当的目录(如 C:Rewrite)下。
' G7 m8 g$ N0 R& }1 l
1 d& {# G$ p. ^! D. `# R3 N, s# C# x1 B
2、在“IIS管理器”里选择网站,右键,属性。
X# R! Y8 p4 c4 |
* }+ y7 W: W. ~7 }2 G
8 U) Z. c# ~7 d- t3、选择“ISAPI”,点击“添加”。, m, u1 s3 D% a7 e ~
, R3 m' R5 H- A
# F, F4 n% i6 V/ f0 F b6 X4、填入筛选器名称,如“rewrite”。
7 q1 P( T ~$ ]$ v: W
^, E( ~2 D# g, t0 m' ]
% W! O/ r. x- \4 ~( J5、可执行文件下方点击“浏览”,选择刚才解压的Rewrite组件位置,Rewrite.dll。( e) v" a+ J8 E
6 m3 @7 P' K3 l+ A8 i5 V
0 Z1 C& p; y7 L: z1 ]4 Q6、确认选择正确后,点击“确定”。
& n! _* y' W; E% K$ V' \
6 g& I3 Q) z7 r, E
. n1 P' Q; Z7 i* m7、点击“确定”,完成筛选器添加。" M$ G8 h2 a* m- q
7 g( m+ s8 ~# ~4 D7 `# \$ W& x( J+ n: v6 a0 z
8、重启IIS。
0 @! o; ?7 u9 Y/ D# ?
& n+ N3 G% n% S t! i1 ^7 L7 O
: y; e0 U/ j0 ~# u" }
6 L! ^' w7 X, x0 X
, A5 ]; o3 n/ s1 B$ j# ~4 U9 D
$ Q2 h1 e& b3 T$ a9、重启IIS后,再次选择站点,右键,属性,看到如下所示向上的绿箭头,说明 IIS Rewrite 成功添加并运行。7 n9 ~3 u% S" A3 @3 b& u. T
; ~! s. a6 i8 f; g1 d
) F+ X4 F5 {( A* k- X
IIS Rewrite 规则设置
+ I$ i; b' ^2 e2 S5 v- s/ _$ e, Z解压后的 IIS Rewrite 组件目录(如 C:Rewrite)中,有一个 httpd.ini 文件,将相应规则写入到这个文件中即可,本程序中自带httpd.ini文件,只需将域名改为你的域名即可。) j4 S" r/ d7 k- d9 T
8 |' Q' d0 ~7 E$ P! n然后登录后台,全局-网站功能-URL静态化-是。
2 S4 q0 b' l4 O) C; M% o
, S' }3 }1 x( G& C9 M8 y按照上面的方法重启IIS,然后就OK了。8 s G8 l. Y2 |4 i
* a; c# b" F& G9 k
切记,如果是自己架设的服务器,一定要重启IIS,否则可能无效。如果是购买的虚拟空间那就不需要了,因为一般都是linux的空间,所有插件都配置好的。
' B( ]8 j7 y0 O: |
3 B) Q9 h+ \( g, X; zhttpd.ini文件配置规则:
! Z$ C2 a# [8 d$ I! a# l9 `( u B# b7 O- L- b
将read.php?bl_id=123&bu_id=456 伪静态成 /html/123/456.html可以这样写:
w6 h+ P$ x; f7 ^; _4 kRewriteRule ^(.*)/html/([0-9]+)/([0-9]+).html$ $1/read.php?bl_id=$2&bu_id=$3: t' i/ \: L/ Y1 L/ A: _( ^
个人备注:
) K+ H6 R3 a2 M% p3 D' d0 ~这里的$1, $2, $3就是前一个表达式的匹配值; V* _* i6 B' s2 b- I
比如:
7 G2 [- T# C9 W+ M8 @, ]- ]$ t^(.*)/simple/([a-z0-9_]+.html)$ $1/simple/index.php?$2
$ `( T' t1 l: S; i2 ?中对应的颜色对应相应的值!: ~" v6 G2 j4 K" @; \
|
|