我即将使用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的第一条规则吗?非常感谢任何帮助!
答案 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}