将URL与HTaccess匹配为某些字符串而不是其他字符串

时间:2011-04-20 15:55:30

标签: .htaccess mod-rewrite redirect

我一直试图解决这个问题一段时间了。我成功地将两位数的子文件夹(即语言文件夹)中的所有URL都引用回主站点。所以我有这样的URL:

http://www.mysite.com/de/index.php&option=com_virtuemart&page=shop.browse&category_id=&product_type_id=1&product_type_1...etc

前往

http://www.mysite.com/index.php&option=com_virtuemart&page=shop.browse&category_id=&product_type_id=1&product_type_1...etc

使用此HTacess系列:

RedirectMatch 301 /../(.*)index.php(.*)$ http://www.mysite.com/$1

直到最近,当我添加了一个以index.php开头的url的联盟系统时,这很好,我想让这个组件免于重写规则。

在摘要中,我希望能够创建匹配网址的规则或匹配内容,如:

http://www.mysite.com/de/index.php&option=com_virtuemart&page=shop.browse&category_id=&product_type_id=1&product_type_1...etc

但与以下网址不匹配:

http://www.mysite.com/de/index.php?option=com_affiliatehttp://www.mysite.com/de/index.php?option=com_affiliate&sec=banners

感谢您抽出时间阅读本文。蚂蚁。

以下是我的HTaccess文件的链接:http://www.seed-city.com/htaccess.txt

1 个答案:

答案 0 :(得分:0)

使用mod_rewrite,您可以执行以下操作:

RewriteEngine On
RewriteCond %{QUERY_STRING} !option=com_affiliate
RewriteRule [a-zA-Z]{2}\/(.*)$ /$1 [L]

希望有所帮助。