0

我正在使用带有 lighttpd 的 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 重写配置中?

4

1 回答 1

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/(将按预期工作-注意尾部斜杠)

于 2009-09-19T02:08:26.450 回答