Im Moment ist mein Domain www.example.com
so eingerichtet, dass er HTTPS erzwingt und funktioniert. Die Seite verlinkt auch alles korrekt mit HTTPS. (Es gibt nirgends Vorkommen von HTTP in der Datenbank.).
Wenn Sie jedoch eine Unterseite besuchen, können Sie die URL erneut in HTTP ändern, z. B. http://example.com/subpage/
, und HTTPS wird nicht erzwungen.
Ich habe diese Regel in meinem .htaccess
im root:
RewriteEngine On
RewriteCond %{HTTP_Host} ^example.com [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://example.com/$1 [R,L]
Irgendwelche Ideen, woran das liegt?
Um alle Ihre Seiten global zu HTTPS umzuleiten, fügen Sie Ihrem .htaccess
die folgenden Zeilen hinzu:
# Globally force SSL.
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_Host}%{REQUEST_URI} [L,R=301]
Dies sollte direkt nach RewriteEngine on
gesetzt werden, wenn Sie noch keine Änderungen vorgenommen haben.
Probieren Sie diese htaccess
-Regel aus
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_Host}%{REQUEST_URI} [L,R=301]