【发布时间】:2011-06-29 20:55:40
【问题描述】:
任何具有查询字符串的/ 请求都会导致触发 404。我发现如果我在查询字符串之前添加一个/shop/,它会在内部被重定向并且不会触发 404。
我需要一个通用的 mod_rewrite 规则,它将采用以下形式的 URL:
http://www.example.com/?foo=bar
并将其重定向到:
http://www.example.com/shop/?foo=bar
查询字符串(可以是任何东西)保存在哪里。
【问题讨论】:
-
据我了解,您只想进行 1 次重写(而不是重定向),因此当请求
/?foo=bar时,实际上会执行/shop/?foo=bar(URL 保持不变),对吗? -
当 any 查询字符串存在时,主页
/出于某种原因返回 404,但/shop/工作正常。重写或重定向应该适用于任意数量的查询参数和任何参数名称,而不仅仅是“foo”。
标签: .htaccess mod-rewrite redirect