URI Routing In Codeigniter Senza .htaccess
-
25-10-2019 - |
Domanda
Questo è il mio url del sito:
xxx.myserver.net
In questo sito voglio instradamento del controller che significa quando ho linkthis digitare l'URL:
xxx.myserver.net/aaaaa
Voglio destinarli al controller che desideravo mezzi taht Voglio riorientare in:
xxx.myserver.net/index.php/controller-name/funation-name/aaaaa
Voglio fare questo senza usare il metodo .htaccess solo utilizzando CodeIgniter uri metodo di routing.
Quando provo a fare questo ottengo un messaggio di errore:
Not Found
The requested URL not found on this server.
Questo è il codice ho dato nella pagina routes.php:
$route['/(:any)'] = "xxx.myserver.net/index.php/controller-name/funation-name/$1";
Qual è il problema nel mio codice?
Come posso fare questo?
Soluzione
Non si può farlo senza l'utilizzo di un file .htaccess
. Da un livello alto, lo scopo del file .htaccess
è di instradare tutte le richieste per il dominio attraverso il front controller CodeIgniter, il file index.php
nella directory principale. Ecco l' documentazione che spiega come la creazione del file e la rimozione .htaccess
index.php
dalle opere URL. Per parafrasare, si afferma come richieste arbitrarie sono trattati come le richieste per il file index.php
.
Quando si effettua una richiesta al xxx.myserver.net/aaaaa
server web è alla ricerca della aaaaa
risorsa nella vostra root. La richiesta non è nemmeno essere elaborato da CodeIgniter. Dal momento che non avete aaaaa
risorsa dal titolo si riceve un errore.
Per usare CodeIgniter senza un file .htaccess
è necessario superare ogni richiesta tramite index.php
. Ad esempio:
xxx.myserver.net/index.php/aaaaa
Poi si potrebbe creare il vostro itinerario in questo modo:
$route['(:any)'] = 'controller_name/function_name/$1';