Contao 4 ohne .html Suffix - SEO optimiert
Wie man in Contao 4 die Url ohne .html Endung (Suffix) darstellen kann, wurde ja schon so einige Male erklärt.
Wie im Video unterhalb des Artikels beschrieben, muss in die config.yml
in dem Ordner app/config/
folgender Eintrag hinzugefügt werden:
contao:
url_suffix: ''
.html mittels htaccess-Umschreibung entfernen
Doch was ist eigentlich, wenn deine Website schon länger online ist und Google & Co. deine Seiten mit der .html Endung indexiert haben?
Keine Panik, alles ganz easy.
Füge einfach den nachfolgenden Code oberhalb der Zeile RewriteRule ^ %{ENV:BASE}/app.php [L]
in die Datei /web/.htaccess
ein.
# Rewrite old .html URLs (app/config/config.yml -> contao: url_suffix: '')
RewriteRule ^(.*)\.html$ /$1 [L,R=301]
Nun wird jede Anfrage mit .html entsprechend umgeschrieben und du behältst dein Ranking bei den Suchmaschinen.
Das wars auch schon.
Video: Contao 4 URL suffix anpassen
YouTube: Contao 4 URL suffix anpassen (Contao Academy)
Einen Kommentar schreiben
Kommentar von Jürgen Palmer |
Hallo Christian, danke – die Zeile hatte ich schon drin. Aber ich glaube, meine Frage, ob man beides braucht, die yml-Datei UND die Änderung an der htaccess-Datei, ist entscheidend. Ich vermute, die Antwort muss JA lauten. HG Jürgen
Kommentar von Jürgen Palmer |
Schöner Hinweis, danke! Frage: Braucht es BEIDE Schritte? Ich hatte mit der Ergänzung in der .htaccess allein kein Glück. Die Seiten hatten zwar kein html mehr, wurden aber auch nicht mehr gefunden – trotz Löschen des Anwendungs-Caches.
Antwort von Christian Barkowsky
Hallo Jürgen, du musst in deiner .htaccess noch eine weitere Regel hinzufügen. Die nachfolgende Regel leitet die alte .html Seite erfolgreich auf die gleiche Seite ohne Endung.
RewriteRule ^(.*)\.html$ /$1 [L,R=301]
.Kommentar von Martin |
Super, genau das was ich gesucht habe! Vielen Dank!
Kommentar von zonky |
Add:
Der Cache muss zum Aktivieren gelöscht werden - entweder auf Konsole oder über den Contao-Manager (Systemwartung > Anwendungs-Cache).