Durch die Kombination der HTTPS-Umleitung mit Rewrite-Regeln kann die Erweiterung .php nicht hinzugefügt werden
P粉098417223
P粉098417223 2024-04-04 15:44:30
0
1
469

Ich hoffe, jemand kann helfen. Ich möchte die Dateierweiterung (.php) aus internen Links entfernen, muss sie aber natürlich zuerst in htaccess konfigurieren.

Ich glaube, der richtige Code ist

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ .php [NC,L]

Aber wenn ich diesen Code unter/über dem bereits vorhandenen Code hinzufüge (https erzwingen)

, passiert nichts, d. h. ich muss immer noch die .php in die URL eingeben.

Nach dem Hinzufügen des obigen Codes sieht die htaccess-Datei folgendermaßen aus:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ .php [NC,L]
RewriteCond %{SERVER_PORT} !=443
RewriteRule ^(.*)$ https://mysite/ [R=301,L]

Irgendwelche Ideen, warum das nicht funktioniert?

Danke

Ich habe online gesucht, aber in allen Beiträgen steht, dass man einfach den Rewrite-Code zu htaccess hinzufügen soll, leider funktioniert das nicht.

Ich glaube nicht, dass dieser Code gut mit dem vorhandenen Code zusammenspielt, der https erzwingt? 🎜
P粉098417223
P粉098417223

Antworte allen(1)
P粉194919082

我认为 RewriteRule 太复杂了。我对我的所有网站使用以下内容:

# append .php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule .* $0.php [L]

# fallback to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage