.htaccess Mod_重写规则问题

.htaccess Mod_重写规则问题,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,我在example.com上有一个域名 有一个子目录有一个测验,位于example.com/quick/?id=1 我需要将?id=1改为takethequick,使其看起来像example.com/quick/takethequick 下面是my.htaccess现在的样子。htaccess位于example.com上的根目录中。现在我总是遇到服务器500错误 RewriteEngine On RewriteBase /quiz RewriteRule ^?id=1$ TaketheQuiz

我在example.com上有一个域名

有一个子目录有一个测验,位于example.com/quick/?id=1

我需要将?id=1改为takethequick,使其看起来像example.com/quick/takethequick

下面是my.htaccess现在的样子。htaccess位于example.com上的根目录中。现在我总是遇到服务器500错误

RewriteEngine On
RewriteBase /quiz
RewriteRule ^?id=1$ TaketheQuiz

这真的很简单,我看到的所有例子都非常复杂,我很难将其应用到这个例子中:帮助,有人吗?谢谢您的时间。

您刚刚把规则搞错了:

RewriteEngine On
RewriteBase /quiz
RewriteRule ^TaketheQuiz$ ?id=1 [L]
编辑

根据您的评论,请尝试以下操作:

RewriteCond %{QUERY_STRING} id=1
RewriteRule ^$ TaketheQuiz [R=301,L]

谢谢你的回答。不幸的是,我完全按照你说的做了,但仍然不起作用。我不再收到500服务器错误,但页面没有重写以进行测验,它只是停留在example.com/?id=1Hm,与以前一样;没有500服务器错误,但也没有重写。