【问题标题】:Modify query string in .htaccess修改 .htaccess 中的查询字符串
【发布时间】:2017-03-17 04:51:29
【问题描述】:

我目前正在更新我们的网站,并希望从旧网址重定向到新网址。我应用了几个重写器来获得没有新页面查询字符串的漂亮 url,这非常有效。但是我在尝试执行以下操作时遇到了问题:

我想改变一个 url 的查询字符串

www.domain.com/?content=foo

www.domain.com/index.php?content=bar

或者更好的是,直接重写到我已经通过重写规则生成的新的、漂亮的 url:

www.domain.com/niceurl

在 .htaccess 文件中使用 RewriteRule。

我试过了:

RewriteCond %{QUERY_STRING} content=foo
RewriteRule content=bar$ content=foo [L]

RewriteCond %{QUERY_STRING} content=foo
RewriteRule niceurl$ content=foo [L]

还有很多其他变体,我就是无法让它工作。有什么想法吗?

【问题讨论】:

  • www.domain.com/niceurl 已经为您工作了吗?你还有其他规则支持吗?

标签: .htaccess mod-rewrite url-rewriting


【解决方案1】:

如果您想重定向,即告诉客户端忘记旧 URL 并获取新的闪亮 URL,则必须查找旧 URL(RewriteRule 模式 /RewriteCond QUERY_STRING)然后将R 重定向到新网址

RewriteCond %{QUERY_STRING} content=foo
RewriteRule ^$ /niceurl [R,L]

【讨论】:

    猜你喜欢
    • 2021-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多