so habe ich eine relativ einfache Seite, wo alle Seiten eine Erweiterung .php haben, dh about.php, gallery.php usw. Ich habe auch einen Service .php Datei und auch ein Unterordner im Verzeichnis Dienste. Für mehr Klarheit ist meine Struktur unten:Seite mit dem gleichen Namen wie Unterordner nicht auflösen nach dem Entfernen von .php Erweiterung mit htaccess
root
|
|-index.php
|-about.php
|-gallery.php
|-services.php
|-contact.php
|-services/
|-service-one.php
|-service-two.php
|-service-three.php
|-service-four.php
Wie Sie sehen werden, habe ich eine Services.php und Dienste-Ordner. In der Wurzel habe ich folgende .htaccess
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
Dies ermöglicht about.php zum Beispiel ohne die Endung .php zugegriffen werden, so http://www.domain.com/about Werke wie about.php würde. Wenn ich jedoch http://www.domain.com/services versuche, bekomme ich weder die Verzeichnisliste noch die services.php-Seite. Ich bekomme die folgende Nachricht, die ein paar Hinweise gibt.
The requested URL /services/.php was not found on this server.
habe ich es nicht gelungen, einen Weg zu finden, dieses Problem zu beheben, frage ich mich, wenn ich eine .htaccess im Verzeichnis/Dienstleistungen Ordner benötigen?
Vielen Dank.
Ja zugestimmt. Das Problem in der OP-Regel besteht jedoch nicht nur im selben Datei-/Verzeichnisnamen. Wenn die Anfrage mit einem abschließenden Schrägstrich z.B. '/ about /' dann wird es auch scheitern. Ein weiteres Problem ist "RewriteCond" – anubhava
Das hat mich irgendwo hingebracht, danke aber immer noch nicht ganz an dem Punkt, an dem ich sein möchte. Ich erhalte jetzt die Verzeichnisauflistung/den Index, wenn ich zu http://www.domain.com/services gehe. Ich habe ein paar andere Dinge vergeblich versucht, eine Sache, die das Problem umgehen würde, ist die Datei include und index.php innerhalb des Verzeichnisses/services. Dann kann ich den Inhalt von services.php einfach in diese index.php-Datei einfügen. Sound ein wenig chaotisch/riskant, obwohl zwei index.php Dateien innerhalb des Projekts haben. – user3725781
Wenn die URL "http: // www.domain.com/services" lautet, möchten Sie dann den Inhalt von "http: // www.domain.com/services.php" anzeigen oder Inhalte von "http:/anzeigen" anzeigen lassen./www.domain.com/services/index.php'? – anubhava