Mein htaccess entfernt derzeit die php-Dateierweiterung und nachfolgende Schrägstriche von URLs. Das ist großartig.Das Aktualisieren von htaccess, um https zu erzwingen und das Entfernen von .php verursacht eine Umleitungsschleife.
Allerdings habe ich gerade ein SSL-Zertifikat gekauft und folgte these instructions, um URLs zu zwingen, mein neu erworbenes SSL-Zertifikat zu zeigen (die Website behandelt persönliche und finanzielle Informationen, also ist es ein großer Verkaufsargument).
Unten ist meine .htaccess Datei, mit dem https: // in den # NEW CODE
Block umgeschrieben. Wenn ich jedoch versuche, die Website zu laden, erhalte ich eine Antwort in Chrome mit der Nummer ERR_TOO_MANY_REDIRECTS
.
RewriteEngine On
# NEW CODE
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://example.com/$1 [R,L]
# END NEW CODE
# Unless directory, remove trailing slash
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/$ https://example.com/$1 [R,L]
# Redirect external .php requests to extensionless url
RewriteCond %{THE_REQUEST} ^(.+)\.php([#?][^\ ]*)?\ HTTP/
RewriteRule ^(.+)\.php$ https://example.com/$1 [R=301,L]
# Resolve .php file for extensionless php urls
RewriteRule ^([^\.]+)$ $1.php [NC,L]
.htaccess Dateien sind nicht meine Forté, also jede mögliche Hilfe würde geschätzt werden!
Und alles funktioniert ohne den neuen Code, keine Umleitung Schleifen? –
Befindet sich ein Load Balancer vor diesem Webserver? –
@DusanBajic Mir ist kein Load Balancer auf dem Server bekannt, und alles funktionierte gut mit dem Original (dh ohne den Abschnitt NEUES CODE und die http URLs statt HTTPS) – tristanojbacon