【发布时间】:2013-02-04 03:09:05
【问题描述】:
2/1/13 更新:这个问题确实让我无法完成一些工作,所以如果其他人有任何建议,我们将不胜感激。
我正在尝试让domain.com/notalone/viewpost/5/ 充当domain.com/notalone/viewpost.php?id=5
我当前的 .htaccess 是这样的:
RewriteEngine On
RewriteRule ^notalone/viewpost/([0-9]+)/?$ /viewpost.php?id=$1 [QSA]
目前,当您访问/notalone/viewpost/5/ 时页面正常加载,但它没有通过$_GET['id']
我尝试过的事情:
- 添加
Options -Multiviews---> 导致 404 - 使用
Rewritebase /---> 没有效果 -
RewriteRule ^viewpost/([0-9]+)/?$ /viewpost.php?id=$1 [QSA]---> 没有效果
【问题讨论】:
-
我应该补充一下,重写代码运行良好!似乎给我带来问题的只是空变量。
-
在脚本顶部添加这个以显示所有服务器变量:
<?php echo var_dump($_SERVER) . "<br /><br />"; ?>。 -
完成了,但我到底在寻找什么?可能是这个?
["QUERY_STRING"]=> string(0) "" -
REQUEST_URI应该是/viewpost/5/。这就是您要与正则表达式匹配的内容。 -
["REQUEST_URI"]=> string(21) "/notalone/viewpost/5/"
标签: mod-rewrite get