基于字符串匹配htaccess重定向url

时间:2012-11-13 15:11:33

标签: apache .htaccess redirect url-rewriting

有数百个网址正在返回服务器错误。以下是示例网址

http://www.example.com/index.php?option=com_nap&format=raw&view=googlemapshow&vw_name=tabbed_compact&pid=12196

如果我看到一个字符串值为“com_nap”的网址,我需要重定向到我的子网域。

上面的网址应该重定向到

http://subdomain.example.com/index.php?option=com_nap&format=raw&view=googlemapshow&vw_name=tabbed_compact&pid=12196

我怎样才能在htaccess中做到这一点。

的问候, 拉加

1 个答案:

答案 0 :(得分:1)

我假设您的网络服务器运行apache并启用了mod_rewrite? 在这种情况下,您可以将QUERY_STRING(?标记后面的部分)与正则表达式匹配。

像这样:

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{QUERY_STRING} ^option=com_nap [NC]
  RewriteRule ^ http://subdomain.example.com%{REQUEST_URI} [R=301,L]
</IfModule>

1)如果可用的话,你打开重写引擎 2)用option = com_nap
检查它开始的QUERY_STRING 3)您使用301重定向到子域