CodeIgniter : enlever le index.php de l’URL

codeigniter-lgLe tutoriel d’aujourd’hui est plus une configuration qu’un tutoriel.

Quand on met en place un projet avec CodeIgniter (petit ou grand), vous verrez toujours l’URL contenir le célèbre index.php.

Pour enlever ce index.php, il suffit de faire une petite modification, qui ne prend même pas 5 minutes à faire. Il est simple, et comprend deux phases.

La première phase consiste à aller dans le fichier config.php du dossier application/config.
Changer le :

$config['index_page'] = 'index.php'

En :

$config['index_page'] = ''

Ensuite, pour l’uri_protocol, mettre une des variables suivantes :

$config['uri_protocol']    = 'REQUEST_URI';
$config['uri_protocol']    = 'AUTO';

La deuxième phase consiste à ajouter des règles dans le fichier .htaccess

RewriteEngine on
RewriteBase /
# Hide the application and system directories by redirecting the request to index.php
RewriteRule ^(application|system) ./index.php/$1 [L]
RewriteCond $1 !^(index\.php|assets/|documents/)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

Attention à la dernière ligne de ce fichier. Si la technique ne marche pas avec cette ligne, il faut faire en sorte que la logique ressemble à celle qui suit :

RewriteRule ^(.*)$ ici_les_fichiers_du projets/index.php/$1 [L]

Enjoy !

Commentaires

4 réponses à “CodeIgniter : enlever le index.php de l’URL”

  1. Avatar de kros claudel
    kros claudel

    Bonsoir, lorsque vous parlez de fichier du projet, a quoi faite vous allusion

    1. Avatar de guillaume

      Si je comprends bien votre question, je parle des fichiers qui composent le projet.

  2. Avatar de chat de compagnie
    chat de compagnie

    Je n’ai pas pu résister à l’envie commenter.
    Parfaitement écrit!

    1. Avatar de guillaume

      Merci.
      Ravie que ça vous plaise.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.