PHP / RewriteRule:GET变量不会被传递

时间:2011-01-19 16:32:09

标签: php apache mod-rewrite

我有一个.htaccess文件,使用

通过前载index.php文件路由所有流量
Options +FollowSymLinks
RewriteEngine On
RewriteRule (.*) index.php?$1 [PT]

但是$ _GET的可变选项由于某种原因没有通过..

在var.dump $ _GET的index.php中,我得到的只是

array(1) { ["index_php"]=> string(0) "" }

无论查询字符串是什么。

我需要改变什么?

谢谢!

4 个答案:

答案 0 :(得分:1)

试试这个:

index.php?page=$1

您必须为该值定义参数。如果您想要所有查询字符串值,可以在{QUERY_STRING}

之后添加$1

答案 1 :(得分:1)

您需要在重写规则末尾使用查询字符串追加标记。将[QSA]放在重写规则的末尾,您希望保留所有$_GET个变量。请记住,如果您还想使用[L]标记,则可以编写[QSA,L]

mod_rewrite - Apache

答案 2 :(得分:0)

试试这个

RewriteRule .* index.php [L] 

答案 3 :(得分:0)

我认为你做错了。你想要得到www.adress.com/page/5/comments创建类似的规则。