mod_rewrite /$variable/file.php

时间:2013-12-23 22:45:34

标签: php apache .htaccess mod-rewrite url-rewriting

我一直试图尝试这个,但我无法得出任何结果。我正在尝试将变量重写为url中的“目录”中的多个文件。我更好地解释这就是我的意思。

没有重写:

/index.php?var=test

/admin/panel.php?var=test

/faq.php?var=test

/directory/test.php?var=test

重写:

/test/index.php

/test/admin/panel.php

/test/faq.php

/test/directory/test.php

我希望能够将其他变量传递给文件。例如:

/test/index.php?user=1&session=1233445

我意识到我可以为每个物理文件和目录执行重写规则..但我希望它是动态的,所以如果我将文件添加到我的网站,我不必继续编辑.htaccess文件。任何帮助,将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:0)

尝试:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/(.*?/?)(index|panel|faq|test)\.php$ /$2$3.php?var=$1 [L,QSA]