Heim > Backend-Entwicklung > PHP-Tutorial > Warum entfernen meine CodeIgniter-URLs „index.php' nicht, obwohl sie mod_rewrite verwenden?

Warum entfernen meine CodeIgniter-URLs „index.php' nicht, obwohl sie mod_rewrite verwenden?

Patricia Arquette
Freigeben: 2024-12-26 01:18:09
Original
656 Leute haben es durchsucht

Why Aren't My CodeIgniter URLs Removing

index.php aus CodeIgniter-URLs entfernen

Ihr Ziel ist es, „index.php“ aus Ihren CodeIgniter-URLs zu entfernen, jedoch trotz der Aktivierung von mod_rewrite Wenn Sie $config['index_page'] auf '' setzen und den bereitgestellten .htaccess-Code implementieren, besteht das Problem weiterhin. Lassen Sie uns die möglichen Ursachen untersuchen.

Stellen Sie zunächst sicher, dass mod_rewrite in Ihrer Apache2-Serverkonfiguration aktiviert ist und dass die Variable $config['index_page'] in config.php leer ist:

$config['index_page'] = "";
Nach dem Login kopieren

Überprüfen Sie als Nächstes, ob Ihre Root-.htaccess-Datei den folgenden Code enthält:

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

Beachten Sie, dass der .htaccess-Code je nach Datei variieren kann auf Ihrem Hosting-Server. In manchen Fällen ist ein zusätzliches „?“ erforderlich. Möglicherweise ist am Ende der letzten Zeile erforderlich:

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

Wenn das Problem durch die vorherigen Schritte nicht behoben werden konnte, versuchen Sie Folgendes:

  1. Aktivieren Sie das REQUEST_URI-Protokoll: Ersetzen Sie $config['uri_protocol'] = "AUTO" durch $config['uri_protocol'] = "REQUEST_URI" in config.php.
  2. RewriteEngine während der Entwicklung deaktivieren: Die RewriteEngine von Apache2 kann die Entwicklungsumgebung von CodeIgniter beeinträchtigen. Deaktivieren Sie es vorübergehend, indem Sie während der Entwicklung die RewriteEngine-Zeile in Ihrer .htaccess-Datei auskommentieren.
  3. Überprüfen Sie die .htaccess-Berechtigungen: Stellen Sie sicher, dass die .htaccess-Dateiberechtigungen so eingestellt sind, dass Apache2 sie ändern kann.
  4. Cache leeren: Schließen Sie Ihren Browser und öffnen Sie ihn erneut oder leeren Sie den Cache, um sicherzustellen, dass die neue URL-Struktur vorhanden ist erkannt.

Das obige ist der detaillierte Inhalt vonWarum entfernen meine CodeIgniter-URLs „index.php' nicht, obwohl sie mod_rewrite verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage