即使文件/目录/位置存在,如何使用查询将URL重写为index.php?

时间:2013-03-18 20:31:27

标签: php apache url rewrite

我正在尝试使用包含请求路径的查询参数重写从我的网站到文件index.php的所有内容,但是当我只是执行RewriteRule ^(.*)$ index.php?url=$1 [L]时,我的index.php文件显示该url包含索引。 PHP ... 简单地说,我想键入localhost / 123或localhost / 123.php并始终在我的url参数中获取路径部分。

无论路径是什么路径,

print_r($_GET['url'])输出Array ( [url] => index.php )

对不起我的英语,希望你明白我的意思:)。

1 个答案:

答案 0 :(得分:1)

尝试在RewriteRule中使用其他标志

而不是[L]

  

RewriteRule ^(。*)$ index.php?url = $ 1 [L]

尝试类似[QSA]

的内容
  

RewriteRule ^(。*)$ index.php?url = $ 1 [QSA]

有关不同类型标志的列表和信息,请查看Apache的文档

http://httpd.apache.org/docs/current/rewrite/flags.html