【问题标题】:.htaccess redirect from url to url with param.htaccess 使用参数从 url 重定向到 url
【发布时间】:2026-02-21 19:45:02
【问题描述】:

我正在尝试从 url 重定向到带有参数的 url: 来自http://www.domain.com/dir1/dir2/dir3/paramidhttp://www.domain.com/dir4/dir5?search=param1&task=search&id=paramid

我在 .htaccess 中尝试了以下内容:

RewriteRule ^dir1/dir2/dir3/(.*)$ /dir4/dir5?search=param1&task=search&id=$1 [R=301,L]

但我无法让它工作。

帮助表示赞赏。

【问题讨论】:

  • 这个 .htaccess 文件在哪里?
  • 乍一看,您的规则似乎没问题。您正在使用永久重定向,这可能会缓存您的规则的错误尝试,但除此之外,我看不出它不起作用的原因。您确定 mod_rewrite 已启用,您已打开重写引擎并且 FollowSymLinks 选项已打开?

标签: .htaccess url redirect


【解决方案1】:

我相信您可能正在寻找QSAQuery String Append Command Flag Block

RewriteRule /dir1/dir2/dir3/(.+) /dir4/dir5?page=$1 [QSA]

就语法而言,您的解决方案很好,但绕过 QSA 命令标志可能会丢失一些较低级别的功能。

【讨论】: