lighttpd的mod_rewrite问题

时间:2009-09-19 01:33:32

标签: mod-rewrite url-rewriting lighttpd

我在modtpd中使用mod_rewrite,我遇到了问题...

这是我的规则:

url.rewrite-once = (".*\.(js|ico|gif|jpg|png|css)$" => "$0", "" => "/index.php")

apache规则适用于apache,如下所示:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d   
RewriteRule !\.(js|ico|gif|jpg|png|css)$ /index.php

它工作得很好,除了当我想使用phpmyadmin时,http://www.site.com/phpmyadmin当然被重定向到我告诉它的地方......但是,我真的希望它能用于真实的目录和文件

如何更改lighttpd中的重写规则以尊重/ phpmyadmin之类的内容?

编辑:

查看所有内容并进行一些研究,我错过了这些行中的lighttpd:

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

如何将这些添加到lighttpd重写配置?

1 个答案:

答案 0 :(得分:0)

经过大量的讨论,阅读和其他许多艰辛的事情后,我想出了这个,我希望它能帮助其他人解决我遇到的同样问题......

url.rewrite-once = (
"/(.*)\.(.*)" => "$0",
"/(phpmyadmin|css|img|js)/" => "$0",
"^/([^.]+)$" => "/index.php/$1"
)

所以: http://www.site.com/class/method/test/1/test2/2(将按预期工作) http://www.site.com/phpmyadmin/(将按预期工作 - 记下尾随斜杠)