/ / htaccess umschreiben und Slashes beibehalten - Apache, .htaccess, Mod-Rewrite, URL-Rewriting

htaccess neu schreiben und Schrägstriche beibehalten - Apache, .htaccess, Mod-Rewrite, URL-Rewriting

Ich würde gerne alle URLs auf neu schreiben test.php auf meiner Website zu zeigen index.php?page=test stattdessen (wo "test" durch irgendein anderes Wort ersetzt werden kann). Dies scheint korrekt zu funktionieren.

Allerdings möchte ich auch alle Anfragen neu schreiben test/testpage.php deuten auf index.php?page=test/testpage stattdessen. Aber mit meinem aktuellen .htaccess scheint das nicht zu funktionieren. Ich bekomme stattdessen einen 404 Fehler.

Meine .htaccess Datei ist wie folgt:

RewriteEngine On
RewriteRule ^([^/?]*).php$ index.php?page=$1 [L,QSA]

Antworten:

1 für die Antwort № 1

Einfach das Regex-Muster optimieren:

RewriteEngine On

RewriteRule ^(.+).php$ index.php?page=$1 [L,QSA,NC]

.+ passt jedes Zeichen 1 oder mehrmals an.