2017-10-19 83 views
0

随着的.htaccess我不能让这样的工作链接“?”:的.htaccess额外的问号重写URL

/quiz/results/solution-one/[email protected] 

/results.php?level=4&[email protected] 

(解决方案应该变成水平= 4)

我花了几个小时的.htaccess构建代码:

Rewriterule ^quiz\/results\/solution-one/(.*)/?$ /var/www/domain.com/public_html/results.php?level=4$1 [QSA,L] 

或这一个:

Rewriterule ^quiz\/results\/solution-one/([[email protected]]*) /var/www/domain.com/public_html/results.php?level=4&$1 [QSA,L] 

但它不起作用。

在此先感谢!

+0

为什么你认为你现有的规则会匹配URL? –

+0

我最近的匹配是这一个:Rewriterule^quiz \/results \/solution-one /([= @。a-zA-Z - ] *)/var/www/domain.com/public_html/results.php?level = 4&$ 1 [QSA,L],但它不起作用,如果我在电子邮件之前添加“问题掩码”。 –

+0

这就是“什么是匹配?”部分意味着。 –

回答

0

尝试用:

RewriteEngine on 
Rewriterule ^quiz/results/solution-one/?$ results.php?level=4 [NC,QSA,L] 

没有文件的路径,但是相对于根。如果没有测试查询字符串(不是Rewriterule测试URI的一部分)

+0

谢谢你的解决方案,但它不起作用。它只有[level] => 4并且没有发送电子邮件。 –

+0

你确定吗?因为使用'[QSA]',它应该自动添加。 – Croises

+0

没有其他.htaccess规则? – Croises