Mod Riscrivi regola su Zeus Server rule (Codeigniter)
-
19-08-2019 - |
Domanda
Sto per andare in diretta con un sito alimentato da Codeigniter. Voglio rimuovere index.php dall'URL in modo che invece di questo:
http://www.mysite.com/index.php/controller
Ottengo qualcosa del genere:
http://www.mysite.com/controller
Finora, abbastanza semplice. In passato ho usato la regola di riscrittura mod fornita dalla documentazione di Codeigniter:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
Funziona come un fascino. Tuttavia, per questo sito, dovrò usare un web server Zeus anziché Apache e non ne ho alcuna familiarità. Zeus ha le sue regole di riscrittura in modo che questo:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[^/]*\.html$ index.php
diventerebbe questo:
match URL into $ with ^/[^/]*\.html$
if matched then set URL = /index.php
Qualcuno può aiutarmi a riscrivere la prima regola per Zeus? Qualsiasi aiuto ricevuto con gratitudine!
Soluzione
Ho capito bene: per me funziona bene:
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}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow