0

我已经看过这个主题几次,但我发现没有什么是我需要的,和/或已经过时了。

我使用 Zend Framework(及其默认的 htaccess 文件)构建了一个网站,并在 MAMP 上进行了本地测试,效果很好。不幸的是,实时网络服务器在 Lighttpd 上运行,我认为它不支持 htaccess。

最大的问题是我对 Web 服务器、正则表达式、mod_rewrite 等完全没有经验,更不用说使用 Apache 以外的任何东西了。

默认的 Zend Framework htaccess 包含这些行:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

而且我完全不知道如何将其转换为 Lighttpd URL 重写规则,以及如何/在何处放置它们:/

任何帮助将不胜感激!

4

2 回答 2

1

按照这个文档:http ://redmine.lighttpd.net/wiki/1/Docs:ModRewrite它应该是这样完成的:

url.rewrite-once = ( "^(/(?!(favicon.ico$|js/|images/)).*)" => "index.php" )

这基本上告诉您的网络服务器重定向不是文件或不在“js/”和“images/”文件夹中的所有内容,以重定向到 index.php

至于你必须把这段代码放在哪里,我自己对 lighttp 不太熟悉。但我希望剪断本身对你有足够的帮助。

对于山姆同胞!;)

于 2011-09-25T12:38:46.680 回答
1

This works fine for me (specialy for ZF2):

url.rewrite-if-not-file = ("^/[^\?]*(\?.*)?$" => "index.php/$1")
于 2013-07-11T13:26:08.390 回答