htaccess URL für Seitenformat domain.com.php umschreiben?
toadly
Ich verstehe, wie man Rewrite-Regeln in .htaccess verwendet, um die .php-Dateierweiterung zu entfernen, aber dies funktioniert nur, wenn der Dateiname konventionell ist, dh 'page.php'.
Ich habe eine Menge Seiten in diesem Format 'domain.com.php' oder 'domain.co.uk.php' und versuche, sie nach dem Umschreiben als /domain.com anzuzeigen. Beispiel: example.com/stackoverflow.com, wobei der Dateiname tatsächlich stackoverflow.com.php lautet
Ich verwende diesen Code aus einer anderen Stackoverflow-Frage:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/$ $1.php
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)$ /$1/ [R=301,L]
Ich habe ein paar Ideen ausprobiert, aber keine funktioniert:
RewriteEngine On
...
RewriteRule (.*)(.*)$ /$1/ [R=301,L]
Anubhava
Sie können diese Regeln zum .php
Ausblenden von Erweiterungen verwenden:
RewriteEngine On
RewriteCond %{THE_REQUEST} \s/+(.+?)\.php[\s?] [NC]
RewriteRule ^ /%1 [R=301,NE,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]