HTTPS zu HTTP-Umschreibungsregeln funktionieren nicht wie erwartet

Ich habe Schwierigkeiten, diese Regeln für die Überarbeitung zu bekommen, und habe mich gefragt, ob jemand auf meine Fehler aufmerksam machen kann.

Im folgenden Beispiel sollte ein Benutzer auf HTTPS umgeleitet werden, wenn er sich auf der Anmeldeseite oder im Administrator-Dashboard befindet. Wenn sie irgendwo anders auf der Website gehen, sollte es wieder auf HTTP gehen.

# Redirect users to HTTPS when at the Login page or the Admin dashboard RewriteEngine On RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^\/Blog\/(wp-login.php) https://%{HTTP_HOST}/Blog/$1 [NC,R=301,L] RewriteRule ^\/Blog\/wp-admin\/(.*) https://%{HTTP_HOST}/Blog/wp-admin/$1 [NC,R=301,L] # Redirect users to HTTP when not at the Login page or Admin Dashboard # Avoid loading mixed http/https content by excluding /wp-content/* and /wp-includes/* RewriteEngine On RewriteCond %{SERVER_PORT} !^80$ RewriteRule !^\/Blog\/(wp-login.php|wp-admin\/(.*)|wp-content\/(.*)|wp-includes\/(.*)) http://%{HTTP_HOST}/$1 [NC,R=301,L] 

Ich bin ein Noob bei diesem, so nicht sicher, ob das oben genannte richtig ist. Es scheint zu funktionieren, außer in zwei Szenarien:

  1. Wenn ich auf irgendeine Seite gehe oder auf meiner Website als https statt http poste, werde ich auf die Haupt-Homepage weitergeleitet. Zum Beispiel: Besuchen Sie https://example.com/about und ich http://example.com bei http://example.com anstelle von http://example.com/about
  2. Die Medienbibliothek meines Admin-Dashboards lädt über https, zeigt jedoch kein Vorhängeschloss. Ich glaube, weil es auf Inhalte unter / wp-content / uploads über HTTP statt über HTTPS zugreift.

Nur für den Fall, dass dies das Problem ist, habe ich auch diese Umschreibungsregeln nach den obigen definiert:

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

Vielen Dank im Voraus für Ihre Hilfe.

Solutions Collecting From Web of "HTTPS zu HTTP-Umschreibungsregeln funktionieren nicht wie erwartet"

Die SSL-Admin- und Login-Umleitung sollte über die FORCE_SSL_ADMIN-Konstante in wp-config.php erfolgen:

  define('FORCE_SSL_ADMIN', true); 

Für weitere Informationen: Administration über SSL

Wenn Sie zu http weitergeleitet werden möchten, wenn Sie angemeldet sind und sich im Frontend befinden, sehen Sie sich bitte Folgendes an:

Redirect WordPress Front-End-HTTPS-URLs zu http ohne ein Plugin