bg-tutorials

So installierst du ein SSL-Zertifikat auf Joomla und erzwingst HTTPS

Das Umstellen einer Joomla-Website auf HTTPS erfordert drei Schritte: Installieren Sie ein SSL-Zertifikat auf Ihrem Server, aktivieren Sie Force HTTPS in der Globalen Konfiguration von Joomla, und fügen Sie eine 301-Weiterleitung hinzu, damit alte HTTP-Links weiterhin funktionieren. Der dritte Schritt hat eine Joomla-spezifische Besonderheit, über die die meisten stolpern, und diese wird unten vor dem Code behandelt.

Kurze Antwort: Installieren Sie das Zertifikat über Ihr Hosting-Panel, gehen Sie dann zu System > Globale Konfiguration > Server und stellen Sie Force HTTPS auf Gesamte Website. Um eine Weiterleitung auf Serverebene hinzuzufügen, benennen Sie zunächst htaccess.txt im Joomla-Stammverzeichnis in .htaccess um, denn Apache ignoriert die Datei unter ihrem ursprünglichen Namen.

SSL (kurz für Secure Sockets Layer, obwohl heute jedes ausgestellte Zertifikat TLS verwendet) ist das, was die Bezeichnung „Nicht sicher“ aus Ihrer Adressleiste entfernt. Wenn Sie zunächst die Grundlagen verstehen möchten, lesen Sie was ein SSL-Zertifikat ist. Diese Schritte gelten für Joomla 5 und Joomla 6.

Welche Methode zu Ihrer Joomla-Einrichtung passt

Ihre EinrichtungSo erhalten Sie das ZertifikatUngefähre Dauer
Managed- oder cPanel-Hosting mit AutoSSLKostenloses Zertifikat im Panel ausstellen, dann Force HTTPS aktivieren10 Minuten
Ein Host ohne SSL-Tool oder eigener VPSCertbot für ein Let’s Encrypt-Zertifikat, dann Force HTTPS aktivieren20 Minuten
Kostenpflichtiges Zertifikat (OV, EV oder Wildcard)CSR generieren, manuell installieren, dann Force HTTPS aktivieren30 Minuten plus Validierung
Cloudflare vor Ihrer WebsiteZertifikat auf dem Ursprungsserver, Cloudflare auf Full (strict) gesetzt, und Behind Load Balancer aktiviert15 Minuten

Erstellen Sie ein Backup, bevor Sie beginnen. Akeeba Backup ist die übliche Wahl bei Joomla. Der Ausfallmodus dieses Vorgangs besteht darin, den Zugriff auf Ihren eigenen Administratorbereich zu verlieren, und ein Backup zusammen mit dem Wiederherstellungsschritt im Abschnitt zu configuration.php unten hilft Ihnen aus dieser Situation heraus.

Welches SSL-Zertifikat sollte eine Joomla-Website verwenden?

Beginnen Sie mit der kostenlosen Option. Die meisten Hoster stellen automatisch kostenlose Let’s Encrypt-Zertifikate aus, und die Verschlüsselung eines kostenlosen Zertifikats ist identisch mit der eines kostenpflichtigen. Der Unterschied zwischen einem Joomla-SSL-Zertifikat und einem anderen liegt darin, was die Zertifizierungsstelle vor der Ausstellung geprüft hat, und was Sie erhalten, wenn etwas schiefgeht.

TypWas die CA prüftAusstellungsdauerGeeignet für
Domain Validation (DV)Dass Sie die Domain kontrollierenMinutenBlogs, Broschürenseiten, die meisten Joomla-Installationen
Organization Validation (OV)Die Domain plus Ihre registrierte Organisation1 bis 3 WerktageFirmenwebsites, Mitgliederbereiche, Kundenportale
Extended Validation (EV)Eine vollständige rechtliche und betriebliche Prüfung des Unternehmens1 bis 3 WerktageShops, Finanzwesen, überall wo Identität wichtig ist

Wenn Ihre Joomla-Installation Subdomains bedient, deckt ein Wildcard-Zertifikat alle mit einem einzigen Zertifikat ab. Nicht sicher, welcher Typ passt? Der SSL Wizard grenzt es mit ein paar Fragen ein.

Ein kostenloses Zertifikat ist in vier Fällen nicht mehr die richtige Antwort: Sie akzeptieren Zahlungen und möchten eine Garantie hinter dem Zertifikat haben, Sie benötigen Ihre verifizierten Organisationsdaten darin statt nur der Domainkontrolle, Sie betreiben Subdomains und die kostenlose Wildcard-Ausstellung ist auf Ihrem Host umständlich, oder Ihr Host automatisiert die Erneuerung nicht. Letzteres ist wichtiger, als man erwarten würde, und der nächste Abschnitt erklärt, warum.

Das Zertifikat auf Ihren Server bringen

Joomla installiert keine Zertifikate. Dieser Schritt findet auf dem Server statt, bevor Sie Joomla überhaupt berühren.

Über Ihr Hosting-Panel

Suchen Sie in Ihrem Kontrollpanel nach SSL/TLS, Let’s Encrypt oder AutoSSL. Bei cPanel befindet es sich unter Security. Stellen Sie das Zertifikat sowohl für die Apex-Domain als auch für die www-Version aus, sonst löst diejenige, die Sie übersehen haben, eine Warnung wegen Namensabweichung aus.

Let’s Encrypt-Zertifikate gelten 90 Tage und sollen etwa 30 Tage vor Ablauf automatisch erneuert werden. Wenn diese Automatisierung ausfällt, meist nach einem Domain-Umzug oder einer DNS-Änderung, funktioniert die Website noch wochenlang weiter und wird dann ohne Vorwarnung unsicher. Stellen Sie sicher, dass die automatische Erneuerung aktiviert ist, und prüfen Sie nach dem ersten erwarteten Erneuerungsdatum das Zertifikat mit dem SSL Checker. Wenn sich das Ablaufdatum nach vorne verschoben hat, funktioniert die Erneuerung.

Auf einem VPS ohne Panel

Verwenden Sie Certbot, den Let’s Encrypt-Client. Er stellt das Zertifikat über die Kommandozeile aus, konfiguriert Apache oder Nginx und installiert seinen eigenen Erneuerungstimer.

Ein kostenpflichtiges Zertifikat manuell installieren

Überspringen Sie die Zwischenzertifikate nicht. Installieren Sie das Hauptzertifikat ohne die Kette, und die meisten Desktop-Browser zeigen trotzdem ein Schloss-Symbol, weil sie Zwischenzertifikate zwischenspeichern, die sie anderswo bereits gesehen haben. Mobile Browser, Zahlungsgateways und API-Clients werden fehlschlagen. Wenn Sie ein Kettenproblem verfolgen, siehe abgelaufene Zwischenzertifikate.

Wie man HTTPS in Joomla erzwingt

Mit einem funktionierenden Zertifikat auf dem Server müssen Sie Joomla anweisen, es zu verwenden. Melden Sie sich im Administratorbereich an und gehen Sie zu System > Globale Konfiguration > Server. Im Block Server oben in diesem Tab finden Sie Force HTTPS, und es hat drei Zustände statt einem einfachen Ein und Aus.

  • Keine. Joomla unternimmt nichts. Seiten bleiben sowohl über HTTP als auch über HTTPS erreichbar.
  • Nur Administrator. Der Administratorbereich, einschließlich des Anmeldebildschirms, wird auf HTTPS erzwungen, während die öffentliche Website unverändert bleibt. Dies ist der Zustand, den Sie verwenden sollten, während ein Zertifikat noch validiert wird, oder bei einer Website, die Sie schrittweise migrieren. Ihr eigenes Passwort wird sofort nicht mehr unverschlüsselt übertragen, ohne dass sich etwas für Besucher ändert.
  • Gesamte Website. Alles wird auf HTTPS erzwungen. Das ist es, was Sie wollen, sobald bestätigt ist, dass das Zertifikat funktioniert.

Wählen Sie Gesamte Website und speichern Sie. Überprüfen Sie, dass das Zertifikat auf Ihrer Domain aufgelöst wird, bevor Sie dies tun. Wenn Force HTTPS aktiviert ist, während das Zertifikat defekt oder fehlend ist, wird auch der Administratorbereich unerreichbar, und Sie benötigen den unten beschriebenen Wiederherstellungsschritt.

Diese Anleitung zielt auf Joomla 5 und Joomla 6 ab, die beiden unterstützten Versionszweige. Joomla 6.0 wurde im Oktober 2025 veröffentlicht, und Joomla 5 erhält ab dem 13. Oktober 2026 keine funktionalen Updates mehr, danach gibt es bis Oktober 2027 nur noch Sicherheitspatches. Wenn Sie noch Joomla 3 verwenden: Es erreichte im August 2023 das Ende der Lebensdauer, und die Einstellung befindet sich an einer anderen Stelle, aktualisieren Sie also, bevor Sie irgendetwas hier befolgen.

Force HTTPS über configuration.php einstellen

Jede Einstellung in der Globalen Konfiguration wird in configuration.php im Joomla-Stammverzeichnis gespeichert. Das Bearbeiten dieser Datei per FTP ist die Methode, um wieder Zugang zu erhalten, wenn Force HTTPS Sie aus dem Administratorbereich ausgesperrt hat, genau die Situation, in der das Dropdown-Menü nicht mehr erreichbar ist.

Die relevante Zeile lautet:

public $force_ssl = 2;

Die Werte entsprechen den drei Zuständen: 0 ist Keine, 1 ist Administrator, und 2 ist sowohl Website als auch Administrator. Das Zurücksetzen auf 0 per FTP hebt eine Aussperrung innerhalb von Sekunden auf.

In der Nähe finden Sie eine zweite Zeile:

public $live_site = '';

Viele Joomla-HTTPS-Tutorials sagen Ihnen, dass Sie dies mit Ihrer https-Adresse ausfüllen sollen, und viele schreiben es als var $live_site. Diese Syntax gehört zu Joomla 1.5, das die PHP-4-Klassensyntax verwendete und 2012 eingestellt wurde. Aktuelles Joomla verwendet public, und die Einstellung ist als optional dokumentiert. Lassen Sie sie leer, sofern Sie keinen konkreten Grund haben, die Website-URL festzulegen. Sie ist nicht das, was HTTPS aktiviert, und eine falsche Einstellung ist eine häufige Ursache dafür, eine Joomla-Website zu zerstören. $force_ssl ist die Einstellung, die die eigentliche Arbeit macht.

Eine 301-Weiterleitung in .htaccess hinzufügen

Force HTTPS behandelt Anfragen, die Joomla erreichen. Eine Weiterleitung auf Serverebene ist schneller, da sie erfolgt, bevor PHP ausgeführt wird, und funktioniert weiterhin, wenn Joomla einmal offline sein sollte. Auf Apache bedeutet das .htaccess, und hier ist der Teil, den fast jede Anleitung überspringt.

Zuerst htaccess.txt umbenennen

Joomla liefert die Datei als htaccess.txt, nicht als .htaccess. Apache ignoriert sie unter diesem Namen. Wenn Sie Weiterleitungsregeln in eine Datei namens htaccess.txt einfügen, oder in eine .htaccess-Datei, die noch nicht existiert, passiert nichts, und es gibt keine Fehlermeldung, die erklärt, warum.

  • Benennen Sie htaccess.txt in .htaccess um in Ihrem Joomla-Stammverzeichnis. Bearbeiten Sie htaccess.txt nicht und lassen Sie sie dort: Ein Joomla-Update überschreibt diese Datei, und Ihre Änderungen gehen dabei verloren.
  • Führen Sie die Umbenennung durch, bevor Sie Use URL Rewriting in der Globalen Konfiguration aktivieren. Wenn Sie das Rewriting zuerst aktivieren, beginnt Joomla, URLs ohne index.php zu erzeugen, die Apache nicht zu leiten weiß, sodass jede Seite außer der Startseite 404 zurückgibt.

Dann die Weiterleitung hinzufügen

Fügen Sie diese Zeilen weit oben in der .htaccess hinzu, über dem eigenen Rewrite-Block von Joomla:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Zwei Details entscheiden darüber, ob dies funktioniert. Die Bedingung muss off lauten, was bedeutet „weiterleiten, wenn die Anfrage noch nicht sicher ist“. Als on geschrieben, was in überraschend vielen veröffentlichten Codeschnipseln vorkommt, greift die Regel nur bei Anfragen, die bereits HTTPS sind, und leitet sie erneut zu HTTPS weiter, was eine Schleife ergibt. Und das Flag R=301 ist das, was daraus eine permanente Weiterleitung macht. Ohne es, oder mit einem bloßen R, erhalten Sie eine temporäre 302-Weiterleitung oder eine interne Umschreibung, die Suchmaschinen nie mitteilt, dass sich etwas verschoben hat.

Auf Nginx

Nginx hat keine .htaccess und liest keine Apache-Rewrite-Regeln. Bearbeiten Sie statt dessen den Server-Block:

server {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://$host$request_uri;
}

Testen Sie mit nginx -t, und laden Sie dann neu mit systemctl reload nginx.

Was der Wechsel hinterlässt, beheben

Leeren Sie den Joomla-Cache. Das ist der erste Schritt und derjenige, der am häufigsten vergessen wird. Joomla wird bereitwillig weiterhin zwischengespeicherte Seiten voller HTTP-Markup ausliefern, was eine abgeschlossene Migration kaputt erscheinen lässt. Gehen Sie zu System > Cache leeren, im Bereich Wartung, und leeren Sie auch Ihr CDN, falls Sie eines verwenden.

Beheben Sie gemischte Inhalte. Eine Seite, die über HTTPS ausgeliefert wird, aber ein Bild, Skript oder Stylesheet weiterhin über HTTP lädt, hat gemischte Inhalte (Mixed Content). Browser behandeln die beiden Kategorien unterschiedlich: Medien sind üblicherweise aufrüstbar, sodass der Browser sie still und heimlich über HTTPS anfordert, während Skripte und Stylesheets blockierbar sind und einfach verweigert werden, weshalb eine betroffene Seite völlig unformatiert erscheinen kann. Bei Joomla sind die üblichen Quellen hartcodierte URLs in Template-Overrides, Modul-Einstellungen und Drittanbieter-Erweiterungen. Die Browser-Konsole nennt die betreffende Ressource. Unsere Anleitung wie man Mixed Content behebt behandelt die Diagnose ausführlich.

Aktualisieren Sie Ihre Sitemap und robots.txt. Erzeugen Sie die XML-Sitemap neu, sodass sie https-URLs auflistet, und prüfen Sie, dass robots.txt nicht auf die http-Version von irgendetwas verweist.

Fehlerbehebung bei Joomla-SSL-Problemen

Zu viele Weiterleitungen nach Aktivierung von Force HTTPS

Das ist der häufigste Joomla-HTTPS-Fehler, und er tritt auf, weil zwei Standardratschläge nicht miteinander vereinbar sind. Wenn ein Proxy wie Cloudflare TLS beendet und dann über einfaches HTTP mit Ihrem Server kommuniziert, sieht Joomla niemals eine HTTPS-Anfrage. Force HTTPS schließt daraus, dass der Besucher unsicher angekommen ist, und leitet ihn auf HTTPS um, der Proxy beantwortet diese Anfrage erneut über HTTP, und die Schleife setzt sich fort, bis der Browser mit ERR_TOO_MANY_REDIRECTS aufgibt.

Es gibt zwei Lösungen, und Sie brauchen im Allgemeinen beide:

  • Stellen Sie Ihren Cloudflare-SSL/TLS-Verschlüsselungsmodus auf Full (strict) und behalten Sie ein gültiges Zertifikat auf dem Ursprungsserver. Der Flexible-Modus, den mehrere beliebte Joomla-Tutorials immer noch als schnelle kostenlose Option empfehlen, ist das, was die Schleife erzeugt.
  • Schalten Sie Behind Load Balancer auf Yes. Dies befindet sich auf demselben Tab System > Globale Konfiguration > Server, weiter unten im Block Proxy. Dies weist Joomla an, dem weitergeleiteten Protokoll-Header des Proxys zu vertrauen, statt nach einer direkten HTTPS-Verbindung zu suchen.

Eine Warnung zu dieser zweiten Einstellung: Aktivieren Sie Behind Load Balancer nur, wenn Ihre Website sich tatsächlich hinter einem Proxy, Load Balancer oder CDN befindet. Auf einem gewöhnlichen Host schwächt das Vertrauen in einen weitergeleiteten Header, den jeder senden kann, die Sicherheit ohne jeglichen Nutzen.

Andere häufige Probleme

SymptomUrsacheLösung
Aus dem Administratorbereich ausgesperrtForce HTTPS aktiviert, während das Zertifikat fehlt oder defekt istSetzen Sie $force_ssl per FTP in configuration.php auf 0, beheben Sie das Zertifikat, dann erneut aktivieren
Die Weiterleitungsregeln bewirken nichtsSie wurden in htaccess.txt geschrieben, oder in eine .htaccess-Datei, die nicht existiertBenennen Sie htaccess.txt in .htaccess um
Jede Seite außer der Startseite gibt 404 zurückURL Rewriting wurde vor der Umbenennung aktiviertDatei umbenennen, oder Rewriting deaktivieren, bis Sie es getan haben
Schloss fehlt nur bei bestimmten SeitenGemischte Inhalte auf diesen SeitenFinden Sie die HTTP-Ressource in der Browser-Konsole
Website war in Ordnung, wurde Wochen später unsicherEin Let’s Encrypt-Zertifikat ist abgelaufen, weil die Erneuerung fehlgeschlagen istErneut ausstellen, dann die automatische Erneuerung in Ihrem Panel bestätigen
Funktioniert im Browser, schlägt bei einer App oder einem Gateway fehlUnvollständige ZertifikatsketteInstallieren Sie das vollständige CA-Bundle, prüfen Sie erneut mit dem SSL Checker
Namensabweichung bei www oder der Apex-DomainDas Zertifikat deckt nur einen der beiden Namen abErneut ausstellen, das beide abdeckt. Siehe common name invalid

Wenn das Zertifikat installiert ist und die Website weiterhin als unsicher gemeldet wird, behandeln die SSL-Fehleranleitungen spezifische Browser-Fehlercodes.

Nach dem Wechsel: SEO-Checkliste

  • Fügen Sie die HTTPS-Property in der Google Search Console hinzu. Eine HTTP-Property meldet keine HTTPS-URLs. Fügen Sie die neue hinzu, oder verwenden Sie eine Domain-Property, die beide abdeckt.
  • Reichen Sie die Sitemap erneut ein mit https-URLs.
  • Überprüfen Sie, dass Canonical-Tags in Ihrer SEF- oder SEO-Erweiterung auf https verweisen.
  • Aktualisieren Sie Analytics und jeden Drittanbieter-Dienst, der Ihre Website-URL speichert.

Erwarten Sie einige Schwankungen. Google behandelt einen Wechsel von HTTP zu HTTPS als einen Website-Umzug mit URL-Änderungen, sodass Impressionen für eine Weile über Ihre HTTP- und HTTPS-Properties verteilt erscheinen werden, und die Rankings schwanken oft für einige Wochen, bevor sie sich stabilisieren. Solange jede Seite aufgelöst wird und die 301-Weiterleitungen vorhanden sind, gibt es nichts zu beheben.

Sobald HTTPS eine Zeit lang stabil war, ziehen Sie HSTS in Betracht, was Browsern mitteilt, einfaches HTTP für Ihre Domain grundsätzlich zu verweigern. Lassen Sie die Preload-Direktive zunächst deaktiviert, da sie schwer umzukehren ist und jede Subdomain, die noch auf HTTP läuft, unerreichbar macht.

Häufig gestellte Fragen

Wie aktiviere ich SSL in Joomla?

Installieren Sie zunächst ein SSL-Zertifikat auf Ihrem Server, über Ihr Hosting-Panel oder manuell. Melden Sie sich dann im Joomla-Administratorbereich an, öffnen Sie System > Globale Konfiguration > Server, und stellen Sie Force HTTPS auf Gesamte Website. Joomla selbst installiert keine Zertifikate. Es setzt nur das durch, was Ihr Server bereits hat.

Wo befindet sich die Force HTTPS-Einstellung in Joomla?

Im Tab System > Globale Konfiguration > Server, im Block Server oben darin. Es bietet drei Zustände: Keine, Nur Administrator, und Gesamte Website. Nur Administrator ist nützlich, während ein Zertifikat noch validiert wird, da es Ihre Anmeldung sichert, ohne das zu verändern, was Besucher sehen.

Warum zeigt meine Joomla-Website nach Aktivierung von Force HTTPS „zu viele Weiterleitungen“?

Fast immer, weil ein Proxy wie Cloudflare TLS beendet und einfaches HTTP an Ihren Server weitergibt, sodass Joomla denkt, jede Anfrage sei unsicher angekommen, und sie erneut umleitet. Stellen Sie Ihren Cloudflare-Verschlüsselungsmodus auf Full (strict) statt Flexible, und schalten Sie Behind Load Balancer auf Yes, im Block Proxy der Globalen Konfiguration. Aktivieren Sie diese Einstellung nur, wenn Sie sich tatsächlich hinter einem Proxy befinden.

Muss ich configuration.php bearbeiten, um HTTPS zu nutzen?

Nein. Das Dropdown-Menü in der Globalen Konfiguration schreibt denselben Wert, den die Datei enthält. Das Bearbeiten von configuration.php ist in einer Situation wichtig: Wenn Force HTTPS Sie aus dem Administratorbereich ausgesperrt hat, können Sie $force_ssl per FTP wieder auf 0 setzen. Ignorieren Sie ältere Tutorials, die Ihnen sagen, var $live_site auszufüllen. Diese Syntax wurde 2012 mit Joomla 1.5 abgeschafft, und die Einstellung ist ohnehin optional.

Warum funktioniert meine .htaccess-Weiterleitung in Joomla nicht?

Überprüfen Sie zuerst den Dateinamen. Joomla liefert die Datei als htaccess.txt aus, und Apache ignoriert sie unter diesem Namen, sodass darin eingefügte Regeln niemals ausgeführt werden. Benennen Sie sie in .htaccess um. Wenn die Datei korrekt ist, überprüfen Sie die Bedingung: Sie muss RewriteCond %{HTTPS} off lauten. Als „on“ geschrieben, passt sie nur auf Anfragen, die bereits sicher sind, was eine Weiterleitungsschleife statt einer Weiterleitung erzeugt.

Für welche Joomla-Versionen gelten diese Schritte?

Joomla 5 und Joomla 6, die beiden derzeit unterstützten Versionszweige. Joomla 6.0 wurde im Oktober 2025 veröffentlicht. Joomla 5 erhält funktionale Updates bis zum 13. Oktober 2026 und Sicherheitspatches bis Oktober 2027. Joomla 3 erreichte im August 2023 das Ende der Lebensdauer und organisiert seine Konfiguration anders, aktualisieren Sie also, bevor Sie diesen Schritten folgen.

Wechseln Sie eine andere Plattform, oder möchten Sie das allgemeine Verfahren? Sehen Sie unsere Anleitung zu wie man eine Website von HTTP auf HTTPS umstellt.

Sparen Sie 10% auf SSL-Zertifikate, wenn Sie noch heute bestellen!

Schnelle Ausstellung, starke Verschlüsselung, 99,99% Browser-Vertrauen, engagierter Support und 25-tägige Geld-zurück-Garantie. Gutscheincode: SAVE10

A detailed image of a dragon in flight
Geschrieben von

Erfahrener Content-Autor, spezialisiert auf SSL-Zertifikate. Verwandeln Sie komplexe Cybersicherheitsthemen in klare, ansprechende Inhalte. Tragen Sie durch wirkungsvolle Narrative zur Verbesserung der digitalen Sicherheit bei.