/ / Codeigniter Rimuovere .php e instradare a index.php [duplicato] - php, .htaccess, codeigniter

Codeigniter Rimuovi .php e instradare a index.php [duplicato] - php, .htaccess, codeigniter

Se un utente segue questo URL:

http://localhost/events/info.php

Come posso rimuovere l'estensione .php tramite htaccess in modo che l'utente venga indirizzato a index.php e al controller degli eventi nella funzione Info? Fondamentalmente voglio creare reindirizzamenti 301.

http://localhost/events/info

Ho dei vecchi collegamenti indicizzati che devo reindirizzare alle funzioni del mio controller, quindi non ottengo 404.

risposte:

1 per risposta № 1

uso

RewriteEngine On
RewriteRule ^events/info/$ index.php [L,QSA]

0 per risposta № 2

Quale versione di CI stai usando?

normalmente abbiamo già ottenuto questo senza .php

http://localhost/events/info

Per instradare a index.php (nella cartella di visualizzazione): è sufficiente farlo nel file del controller.

controllori / events.php

function info(){
redirect("events/index");
}

function index()
{
$this->load->view("index.php");
}

0 per risposta № 3

Un reindirizzamento 301 può essere raggiunto utilizzando .htaccess

Redirect 301 events/info.php http://localhost/events/info

Puoi trovare questo strumento utile per generare i reindirizzamenti.


Se vuoi solo indirizzare l'URL: http://localhost/events/info.php al info funzione nel tuo events controller, quindi non lo fai avere rimuovere .php dall'URL, puoi aggiungere un itinerario in application/config/routes.php.

$route["events/info.php"] = "events/info";

Se non lo hai già, devi anche rimuovere index.php, La guida per l'utente di CodeIgniter spiega come eseguire questa operazione.

Se ti piacerebbe rimuovere .php da tutti i tuoi URL per renderli più puliti, quindi ci sono un sacco di risorse disponibili, tra cui altre risposte su SO.