重写apache htaccess的规则,检查是否存在某些GET参数

时间:2010-08-04 13:03:15

标签: apache .htaccess rewrite

我找不到解决方案......

我有几个动态页面链接,看起来像http://DOMAIN/PAGENAME?&param=a/param2=b&tx_ttnews[tt_news]=114&param3=c

不,我想对某些“tx_ttnews [tt_news]”值进行重写,即如果它存在(或某些其他数字),我想重定向到完全不同的URL。

我只有一小部分,所以基本上我需要一个规则“存在A>重定向到G”,如

tx_ttnews [tt_news] = 114>> domain.com/asd.html tx_ttnews [tt_news] = 93>> otherdomain.org/ljasd.php

有一个映射列表,我可以为每个项目输入行。我只是不知道正确的代码......

有没有人有线索?

1 个答案:

答案 0 :(得分:1)

如果有人对我找到的解决方案感兴趣:

RewriteCond %{QUERY_STRING} (tx_ttnews(.*)tt_news(.*)=114)
RewriteRule (.*) http://www.domain.com/news/2010/07/my-new-news-item/? [L,R=301]

我们最终为所有受影响的ID(本示例中的14个)提供了多个重写规则。由于每个ID现在对应于不同系统中的某个URL,因此我们必须编写手动重写。不漂亮,但工作。