使用.htaccess重写规则时$ _GET为空

时间:2016-08-30 22:19:23

标签: php apache .htaccess mod-rewrite

我试图在页面名称(test2)之后获取var,但在php中它是空的。

url:https://example.com/test2/34

htaccess的:

Options +FollowSymlinks
RewriteEngine on

DirectoryIndex index.php

RewriteRule ^test2 index.php?page=test2&id=$1 [QSA]

php $ _GET vardump

array(2) { ["page"]=> string(5) "test2" ["id"]=> string(0) "" }

1 个答案:

答案 0 :(得分:2)

这是因为你没有在test2/之后匹配和捕捉价值。

您可以使用:

DirectoryIndex index.php
Options +FollowSymlinks

RewriteEngine on    

RewriteRule ^test2/(.*)$ index.php?page=test2&id=$1 [QSA,L,NC]