htaccess包含查询字符串

时间:2014-03-20 12:16:15

标签: apache .htaccess mod-rewrite redirect

我知道很多次问过类似的问题,但我的情况有点不同。

这是我的代码:

RewriteRule ^activate$ activate.php

当用户请求/activate?q=foo时,我希望用户重定向到/activate.php?q=foo 目前它只是截断查询字符串并将用户重定向到/activate.php

现在,我尝试了[QSA]标志,但它似乎强制执行301重定向,在这种情况下这不是一个选项。

我也尝试了$1之类的内容,但我根本无法让它工作。

我在问这个问题之前做过谷歌搜索。在我决定问这里之前,我在htaccess include query string上访问了Google上的第10页。

再说一遍,301重定向不是一个选项,它必须保持在同一页面上,但加载另一个(我认为它被称为内部重定向,但我不确定)。

非常感谢你。

修改

As Mike S. requested,这是我完整的htaccess:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

RewriteRule ^feedback$ feedback.php
RewriteRule ^roomie$ roomie.php
RewriteRule ^nyroomie$ addroomie.php
RewriteRule ^registrer$ register.php
RewriteRule ^activate$ activate.php

AuthName "Restricted Area" 
AuthType Basic 
AuthUserFile *CENSORED*/.htpasswd
require valid-user

1 个答案:

答案 0 :(得分:0)

由于启用与MultiViews冲突的选项mod_rewrite(内容协商),很可能会发生这种情况。在顶部添加此行以禁用它:

Options -MultiViews