Mod_rewrite是查询字符串的简称

时间:2012-08-03 06:05:59

标签: mod-rewrite url-rewriting

我正在从一个内容系统迁移到另一个内容系统,需要将旧网址映射到新网址。旧的是短的,新的更长(至少对于迁移。

旧的URL看起来像这样:

http://example.com/sport/0/article/16814.php

其中16814是记录ID。新的看起来像这样:

的index.php模块=故事&安培;类型=用户安培; FUNC =显示&安培; TID = 3及PID = 16814

旧URL中的“sport”映射到新的“3”,但与sport相同的位置可能是“column”,它映射到“4”。记录ID在两个实例中都映射相同。

如果无法进行条件映射,我可以进行两次单独的重写......

由于

1 个答案:

答案 0 :(得分:0)

如果没有那么多tid,你可以通过它们进行枚举:

RewriteEngine On
RewriteRule ^/?sport/.*/([0-9]+)\.php /index.php?module=stories&type=user&func=display&tid=3&pid=$1 [L,QSA]
RewriteRule ^/?column/.*/([0-9]+)\.php /index.php?module=stories&type=user&func=display&tid=4&pid=$1 [L,QSA]