【问题标题】:rewrite rules with query sign用查询符号重写规则
【发布时间】:2013-12-14 14:42:21
【问题描述】:

在重写规则方面需要您的帮助。我需要将单词 some-ads 重写为仅广告并保留所有数据。 所以例如我想从

http://myserver.com/some-ads?as=184252&pr=0101

http://myserver.com/ads?as=184252&pr=0101

我尝试了以下方法:

RewriteCond %{QUERY_STRING} (.*)
RewriteRule ^some-ads$ http://myserver.com/ads?%1 [L]

但是? 符号之后的所有内容都会被忽略。如何保留查询标志和所有数据?

谢谢!

【问题讨论】:

标签: .htaccess mod-rewrite query-string


【解决方案1】:

这可能会起作用:

RewriteEngine On
RewriteRule ^some-ads$ http://myserver.com/ads [QSA,R=301,L]

QSA:附加了查询字符串。

您的具体情况不需要 RewriteCond %{QUERY_STRING} (.*)。

R=301 添加到重定向 URL,在浏览器的地址栏上可见。

如果你不想重定向,而是简单的重写,

你最好使用这个更简单的形式:

RewriteEngine On
RewriteRule ^some-ads$ /ads [QSA,L]

添加:

您的原始代码也适用于我们的 Debian/Apache2 服务器。

【讨论】:

    猜你喜欢
    • 2015-09-10
    • 2016-08-13
    • 2016-11-01
    • 2011-04-18
    • 1970-01-01
    • 1970-01-01
    • 2012-03-11
    • 1970-01-01
    • 2016-12-08
    相关资源
    最近更新 更多