it-swarm.com.de

https-Umleitungsschleife (mit .htaccess)

Es gibt einige Threads, die diesbezüglich laufen, aber alle scheinen dasselbe zu sagen (was ich versucht habe), aber ich erhalte immer wieder eine Umleitungsschleife. Ich habe bereits versucht, die WordPress-Adresse (URL) und die Site-Adresse (URL) in den allgemeinen Einstellungen zu ändern (mein Admin-Bereich befindet sich bereits unter https).

Mein .htaccess sieht so aus:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On

# start https redirect
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_Host}%{REQUEST_URI} [L,R=301]
# end https redirect

RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

Hat jemand eine Idee?

2
Vincent

Ich würde es vermeiden, den .htaccess zu bearbeiten, wenn Sie nur Ihre Website von HTTP auf HTTPS aktualisieren. Versuchen Sie eine alternative Route:

Setzen Sie zunächst Ihren .htaccess auf die Standardeinstellungen zurück:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Als Nächstes müssen Sie sicherstellen, dass alle URLs für Ihre Website auf dem neuesten Stand sind. Führen Sie die folgenden Schritte mit dem Tool Datenbank ersetzen aus:

  1. Gehen Sie und laden Sie Interconnect ITs Datenbank Search & Replace Script hier herunter
  2. Entpacke die Datei und lege den Ordner in deinem localhost ab, in dem dein WordPress installiert ist (das Stammverzeichnis) und benenne den Ordner inreplace( screenshot )
  3. Navigieren Sie zu dem neuen Ordner, den Sie in Ihrem Browser erstellt haben (z. B .: http://web.site/replace) und Sie sehen das Suchen/Ersetzen-Tool
  4. Bis zu diesem Punkt sollte es ziemlich selbsterklärend sein: Geben Sie Ihren HTTPS-Link in das Feldsearch for…und den neuen HTTPS-Link in das Feldreplace with…ein

Sie können auf die Schaltfläche Probelauf unter Aktionen klicken, um zu sehen, was ersetzt wird, bevor Sie das Skript ausführen. Wenn Sie fertig sind, müssen Sie den Ordner /replace/ entfernen.

Jedoch...

Wenn Sie weiterhin darauf bestehen, dass Ihre HTTP-Weiterleitung über den .htaccess an HTTPS weitergeleitet wird, fügen Sie zwischen den <IfModule mod_rewrite.c> -Tags Folgendes ein:

RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R,L]

Es sollte wie folgt aussehen:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# Rewrite HTTP to HTTPS
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R,L]
</IfModule>
# END WordPress