2010-04-19 126 views
0

我是新来的RewriteEngine叙述,并没有能够找到答案了以下问题。我运行一个电子商务网站,其中有一个不断变化的产品目录。我们的网址是动态的。问题是,如果我想让一个动态变量重定向到一个不同的动态变量。重写动态URL到一个新的动态URL

举例来说,我想:

http://www.mydomain.com/product.jhtm?id=12345

到现在去:

www.mydomain.com/product.jhtm?id=78910

我该怎么做通过.htaccess?

在此先感谢。

回答

0

您需要使用RewriteMap指令的外部重写程序功能。实际上,您可以使用任何您想要的语言编写应用程序(只要您使其可执行),即可读入STDIN上的原始ID,然后在STDOUT上输出新的应用程序。然后,您可以在RewriteRules中引用该应用程序。

在您的应用程序层而不是在.htaccess文件中实现这种逻辑可能更容易,尤其是因为外部重写程序必须连续运行,而不是每次新重写都要调用。

0

您需要使用RewriteMap,地图类型为prg才能让脚本查找原始ID并返回新ID。不要忘记查询字符串只能在RewriteCond中分解。