我即将去住一个笨驱动的站点。我想从链接中删除的index.php以便代替这样的:

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

我得到的是这样的:

http://www.mysite.com/controller

到目前为止,非常简单。在过去,我已经使用由笨文档供给的MOD-重写规则:

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

这就像一个魅力。然而,对于这个网站,我不必使用宙斯的Web服务器,而不是Apache和我不熟悉它。宙斯有它自己的重写规则,使得这样的:

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

将变成这样:

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

谁能帮我改写了宙斯的第一个规则?任何帮助非常感激地接受!

有帮助吗?

解决方案

想通了 - 下面的作品很好地对我说:

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}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top