在urlrewrite之后,php得不到值

时间:2012-03-09 11:19:15

标签: php url-rewriting get

我想将page.php?search= 关键字重写为page/ 关键字

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^index\.php$ - [L]    
RewriteRule ^page/(.*)/?$ page.php?search=$2
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
</IfModule>

然后输入一些网址:localhost/page/hello,我无法获得hello

<?php
echo $_SERVER['QUERY_STRING'];//search=
echo $_GET['search'];//empty
?>

1 个答案:

答案 0 :(得分:2)

网址的“你好”部分应该是1美元,而不是2美元 - 你只是用正则表达式提取网址的一部分。尝试:

RewriteRule ^page/(.*)/?$ page.php?search=$1