Heim > Artikel > Backend-Entwicklung > So lösen Sie 404-Fehler mit Nginx und dem CI-Framework
In diesem Artikel werden hauptsächlich relevante Informationen zur Behebung von 404-Fehlern in Nginx und CI vorgestellt. Freunde in Not können darauf zurückgreifen.
Ich habe kürzlich das Ci-Framework kennengelernt und ein einfaches Projekt zum Einrichten eines Servers erstellt Lokal. Die Umgebung wurde angepasst, aber bei der Bereitstellung auf dem Remote-Server kann auf
http://example.com/(index.php)/ zugegriffen werden (für die konfigurierte Standard-Controller-Klasse)
Auf http://example.com/(index.php)/[controller-class]/[controller-method] kann nicht zugegriffen werden (Fehlermeldung 404!)
Schließlich Baidu-Grund:
Bei URLs wie /index.php/abc interpretieren Apache und Lighttpd es als „index.php?abc“, während Nginx denkt, dass der Anforderungsname „index“ ist. php“ Der Inhalt der abc-Datei im Verzeichnis. Daher kann CI ohne konfiguriertes Rewrite nicht unter Nginx ausgeführt werden, funktioniert jedoch normal unter Apache und Lighttpd.
Lösung (Hervorhebung fett, Hervorhebung rot):
server { listen ; server_name example.com; root /data/wwwroot/example/ index index.php index.html index.htm; location ~* \.(css|js|swf|htm|jpg|png|gif|json|atlas)?$ { expires d; add_header Pragma public; add_header Cache-Control "public"; } location /controller-class/ { if (!-e $request_filename) { rewrite ^/controller-class/(.*)$ /controller-class/index.php?q=$uri&$args; } } location ~ \.php$ { fastcgi_pass ...:; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PHP_VALUE open_basedir=$document_root:/tmp/:/proc/; include fastcgi_params; } }
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er zum Lernen aller beiträgt. Bitte achten Sie darauf zu weiteren verwandten Inhalten der chinesischen PHP-Website!
Verwandte Empfehlungen:
Analyse der Methode zur Erweiterung der Systemkernklasse des CI-Frameworks
Das öffentliche Modell Klassendefinition des CI-Frameworks und Verwendung
Das obige ist der detaillierte Inhalt vonSo lösen Sie 404-Fehler mit Nginx und dem CI-Framework. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!