Si un utilisateur suit cette URL:
http://localhost/events/info.php
Comment puis-je supprimer l'extension .php via htaccess afin que l'utilisateur soit routé vers index.php et mon contrôleur d'événements dans la fonction Info? Je veux fondamentalement créer 301 redirections.
http://localhost/events/info
J'ai d'anciens liens indexés que je dois rediriger vers les fonctions de mon contrôleur afin que je ne reçois pas de 404.
Réponses:
1 pour la réponse № 1utilisation
RewriteEngine On
RewriteRule ^events/info/$ index.php [L,QSA]
0 pour la réponse № 2
Quelle version de CI utilisez-vous?
normalement nous avons déjà comme ça sans .php
http://localhost/events/info
Pour router vers index.php (dans le dossier de vue): il vous suffit de faire comme ceci dans votre fichier de contrôleur.
controllers / events.php
function info(){
redirect("events/index");
}
function index()
{
$this->load->view("index.php");
}
0 pour la réponse № 3
Une redirection 301 peut être réalisée en utilisant .htaccess
Redirect 301 events/info.php http://localhost/events/info
Vous pouvez trouver cet outil utile pour générer les redirections.
Si vous voulez juste router l'URL: http://localhost/events/info.php
au info
fonctionner dans votre events
contrôleur, alors vous ne "t avoir retirer .php
à partir de l'URL, vous pouvez ajouter un route dans application/config/routes.php
.
$route["events/info.php"] = "events/info";
Si vous n "avez pas déjà, alors vous devez également supprimer index.php
, Le guide de l'utilisateur de CodeIgniter explique comment procéder.
Si vous souhaitez supprimer .php
à partir de toutes vos URL pour les rendre plus propres, alors il y a beaucoup de ressources disponibles, y compris autres réponses sur SO.