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!

È stato utile?

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
scroll top