Maison >développement back-end >tutoriel php >Pourquoi mes URL CodeIgniter ne suppriment-elles pas « index.php » malgré l'utilisation de mod_rewrite ?

Pourquoi mes URL CodeIgniter ne suppriment-elles pas « index.php » malgré l'utilisation de mod_rewrite ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-26 01:18:09741parcourir

Why Aren't My CodeIgniter URLs Removing

Suppression de index.php des URL CodeIgniter

Votre objectif est d'éliminer "index.php" de vos URL CodeIgniter, mais malgré l'activation de mod_rewrite , en définissant $config['index_page'] sur '' et en implémentant le code .htaccess fourni, le problème persiste. Examinons les causes potentielles.

Pour commencer, assurez-vous que mod_rewrite est activé dans la configuration de votre serveur Apache2 et que la variable $config['index_page'] dans config.php est vide :

$config['index_page'] = "";

Ensuite, vérifiez que votre fichier racine .htaccess contient le code suivant :

RewriteEngine on
RewriteCond  !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/ [L,QSA]

Notez que le code .htaccess peut varier en fonction sur votre serveur d'hébergement. Dans certains cas, un « ? » supplémentaire peut être requis à la fin de la dernière ligne :

RewriteRule ^(.*)$ index.php?/ [L,QSA]

Si les étapes précédentes ne parviennent pas à résoudre le problème, essayez ce qui suit :

  1. Activer le protocole REQUEST_URI : Remplacez $config['uri_protocol'] = "AUTO" par $config['uri_protocol'] = "REQUEST_URI" dans config.php.
  2. Désactiver RewriteEngine pendant le développement : Le RewriteEngine d'Apache2 peut interférer avec l'environnement de développement de CodeIgniter. Désactivez-le temporairement en commentant la ligne RewriteEngine dans votre fichier .htaccess pendant le développement.
  3. Vérifiez les autorisations .htaccess : Assurez-vous que les autorisations du fichier .htaccess sont définies pour permettre à Apache2 de les modifier.
  4. Vider le cache : Fermez et rouvrez votre navigateur ou videz son cache pour vous assurer que la nouvelle structure d'URL est reconnu.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn