Мод переписать правило на Zeus Server rule (Codeigniter)
-
19-08-2019 - |
Вопрос
Я собираюсь начать работу с сайтом на базе Codeigniter. Я хочу удалить index.php из URL, чтобы вместо этого:
http://www.mysite.com/index.php/controller
Я получаю что-то вроде этого:
http://www.mysite.com/controller
Пока все довольно просто. В прошлом я использовал правило перезаписи мод, предоставленное в документации Codeigniter:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
Это работает как шарм. Однако для этого сайта мне нужно использовать веб-сервер Zeus, а не 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}
Не связан с StackOverflow