我遇到了一个get参数和htaccess重写规则的问题。 以下是urlencode()'ed链接; 我用来重定向到index.php的重写规则,最后是index.php上的print_r($ _ GET)。 正如您所看到的,Ulescaped&符号不是变量static的值的一部分,而是与我的期望相反,被解释为变量分隔符。 为什么?

初始链接:

<a href="static/Game-Tech-%26-Arts-Lab">link</a>

的.htaccess:

RewriteRule ^static/(.*)$ /index.php?static=$1 [L]

index.php文件:

Array ( [static] => Game-Tech- [-Arts-Lab] => )

===============>>#1 票数:24 已采纳

啊好吧。 有趣。 似乎有一个特殊的解决方案,以保持特定的&符号逃脱。 使用Rewriterules[B]标志

RewriteRule ^static/(.*)$ /index.php?static=$1 [L,B]

在插入$1占位符时,这应该是urlencode特殊字符。 它只适用于Apache 2.2,但我相信。

找到一些参考:

  ask by kontur translate from so

未解决问题?本站智能推荐: