【问题标题】:Redirecting a specific url with parameters使用参数重定向特定的 url
【发布时间】:2013-10-26 11:49:58
【问题描述】:

我要重定向

http://www.mountainfoxinn.com/forum/showthread.php?t=33105&p=246263

http://www.mountainfoxinn.com/forum/

通过文档根目录中的 .htaccess 文件。我有 RewriteEngine On 并且一些更简单的重定向正在工作。但这一个不起作用。我已尝试遵循规则,但它们都不起作用。

1. RewriteCond %{QUERY_STRING} ^p=246263$
   RewriteRule ^(.*)$ http://mountainfoxinn/forum? [R=301,L]

2. RewriteRule ^(.)showthread.php(.)$ http://mountainfoxinn/forum/ [L,R=301]

3. RewriteRule ^(.)246263(.)$ http://mountainfoxinn/forum/ [L,R=301]

非常感谢任何帮助。

【问题讨论】:

  • 所以您想从特定主题重定向到论坛主页?目的是什么?
  • 看起来像你想要的stackoverflow.com/questions/583705/…
  • @user2922822:你的论坛目录中有.htaccess吗?如果是,请在此处发布您的代码。

标签: apache .htaccess redirect


【解决方案1】:

您的第一条规则几乎是正确的。正则表达式开头的^ 将匹配字符串的开头,类似地,正则表达式末尾的$ 将匹配结尾。您需要匹配整个查询字符串 (^t=33105&p=246263$) 或 p=246263 在该字符串的某处。

RewriteCond %{QUERY_STRING} ^t=33105&p=246263$
RewriteRule ^(.*)$ http://www.reefland.com/forum? [R,L]

RewriteCond %{QUERY_STRING} p=246263
RewriteRule ^(.*)$ http://www.reefland.com/forum? [R,L]

【讨论】:

  • +1 好答案。说到点子上了。我建议不要捕获并使用R=301
  • @sumurai8 不,您的两条规则都不起作用。 :(
  • @user2922822 怎么不工作?它不会重定向吗?它不会重定向到正确的位置吗?它显示错误的东西吗?您确定 mod_rewrite 已安装并启用吗?
  • 是的,重写已启用,因为其他重定向正在工作。应用此规则后,mountainfoxinn.com/forum/showthread.php?t=33105&p=246263 正在打开。
  • 嗯,主机名无法解析为 ip,所以显然它不会起作用。
猜你喜欢
  • 2010-10-09
  • 2020-05-21
  • 1970-01-01
  • 2015-06-16
  • 2012-07-21
  • 2012-08-03
  • 2013-03-24
  • 2021-01-02
  • 2017-01-21
相关资源
最近更新 更多