使用mod_rewrite将路径转换为查询字符串变量

时间:2011-11-22 22:04:56

标签: php regex apache rewrite expression

我正在尝试让Apache发送:
http://mydomain.com/these/are/arguments/mmmk

于:
http://mydomain.com/?pages=these/are/arguments/mmmk

这样$_GET['pages']会显示these/are/arguments/mmmk

我已将'AllowEncodedSlashes'设置为开。

规则需要能够处理尾部斜杠,并且当没有子页面时(如http://mydomain.com

有谁知道如何完成这项任务?

1 个答案:

答案 0 :(得分:4)

为了不重写图像/脚本,您需要确保.htaccess文件中的文件或目录不存在

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d

  # Rewrite everything else through the pages parameter 
  RewriteRule ^(.+)$ /?pages=$1 [L]