我为我的博客创建了一个 mod_rewrite 规则,该规则最终在我的本地服务器上运行,但是当我上传到我的实时服务器时,它没有传递 $_GET 变量。我已经设法将问题分解为最简单的形式。这是 mod_rewrite:
RewriteEngine on
RewriteRule ^test/([^/\.]+)$ test.php?var=$1 [QSA]
文件 test.php 位于站点的根目录中,其中包含以下代码:
echo '<pre>';
print_r($_GET);
echo '</pre>';
因此,当我在本地服务器上访问 mysite.co.uk/test/hello 时,我得到了
Array
(
[var] => hello
)
正如我所料。但是当我在我的实时站点上尝试时,我仍然被重定向到我的 test.php 页面,只是没有 $_GET 变量:
Array
(
)
有没有人有任何想法可能导致这种情况?在尝试使其正常工作时,我遇到了许多奇怪的事件,任何建议都将不胜感激