Mod重写规则到Zeus服务器规则(Codeigniter)

时间:2008-12-03 19:59:14

标签: apache mod-rewrite codeigniter rewrite zeus

我即将使用Codeigniter支持的网站。我想从url中删除index.php,而不是这样:

http://www.mysite.com/index.php/controller

我得到这样的东西:

http://www.mysite.com/controller

到目前为止,非常简单。在过去,我使用了Codeigniter文档提供的mod-rewrite规则:

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

这就像一个魅力。但是,对于这个站点,我不得不使用Zeus Web服务器而不是Apache,而我根本不熟悉它。 Zeus有自己的重写规则,这样:

RewriteCond %{REQUEST_FILENAME} !-f  
RewriteRule ^[^/]*\.html$ index.php

会变成这样:

match URL into $ with ^/[^/]*\.html$
if matched then set URL = /index.php

任何人都可以帮我重写Zeus的第一条规则吗?非常感谢任何帮助!

1 个答案:

答案 0 :(得分:3)

想出来 - 以下对我很有用:

map path into SCRATCH:DOCROOT from /

set SCRATCH:ORIG_URL = %{URL}
set SCRATCH:REQUEST_URI = %{URL}

look for file at %{SCRATCH:DOCROOT}%{SCRATCH:REQUEST_URI}
if not exists then look for dir at %{SCRATCH:REQUEST_URI}%{SCRATCH:REQUEST_URI}
if not exists then set URL = /index.php%{SCRATCH:REQUEST_URI}