Schon vor einer ganzen Weile, habe ich meinen Blog mit einem SSL Zertifikat ausgestattet, so dass optional der Zugriff über HTTPS möglich ist. Bis heute bin ich aber grandios daran gescheitert, den Login bzw. die Administration über HTTPS zu erzwingen und den Blog noch regulär über HTTP erreichbar zu lassen. Artikel dazu sind zahlreich und die Umstellung an sich auch total leicht, ich habe aber einen simplen Fehler gemacht, weshalb das ganze nie funktioniert hat.
Im Grunde muss der Datei wp-config.php nur eine Zeile hinzugefügt werden. Das steht auch entsprechend im WordPress Codex und ist per Google sehr leicht zu finden. Entsprechend der Anleitung habe ich die Zeile
define('FORCE_SSL_ADMIN', true);
zu meiner wp-config.php hinzugefügt. Nunja, passiert ist aber leider rein gar nichts. Ich hielt das für einen dummen Fehler und habe mir erstmal nichts dabei gedacht. Stattdessen haben ich einfach meine Bookmarks geändert, so dass ich beim Zugriff auf die WordPress Administration einfach immer über HTTPS gegangen bin.
Trotzdem hat es mich immer gewurmt, dass ich manchmal während der Administration doch einen “Rückfall” auf HTTP hatte, so dass ich erneut nach der richtigen Konfiguration gesucht habe. Siehe da, ich habe etwas falsch gemacht. Die Lösung habe ich hier gefunden: [resolved] FORCE_SSL_ADMIN/LOGIN not working? Dort beschreibt jemand genau das gleich Problem. Ich war also schon mal nicht allein. Die Lösung ist ganz einfach: Der define Parameter darf nicht am Ende der wp-config.php stehen, sondern muss dort möglichst am Anfang stehen. Direkt geändert, service apache2 reload und endlich funktioniert es wie erwartet!