Weiterleitungen via htaccess: Unterschied zwischen den Versionen
Aus Contao Community Documentation
(Die Seite wurde neu angelegt: „{{stub}} Um [http://www.google.com/support/webmasters/bin/answer.py?hl=de&answer=66359 Duplicate Content] zu vermeiden, ist es sinnvoll URL's die den selben Inha…“) |
|||
Zeile 1: | Zeile 1: | ||
{{stub}} | {{stub}} | ||
− | Um [http://www.google.com/support/webmasters/bin/answer.py?hl=de&answer=66359 Duplicate Content] zu vermeiden, ist es sinnvoll URL's die den selben Inhalt zeigen weiterzuleiten. In der Regel geht das mit einem Eintrag in der .htaccess am schnellsten. Diese Anleitung setzt einen Webserver mit entsprechenden Rechten | + | Um [http://www.google.com/support/webmasters/bin/answer.py?hl=de&answer=66359 Duplicate Content] zu vermeiden, ist es sinnvoll URL's die den selben Inhalt zeigen weiterzuleiten. In der Regel geht das mit einem Eintrag in der .htaccess am schnellsten. Diese Anleitung setzt einen Webserver mit entsprechenden Rechten voraus. |
== www/ohne www == | == www/ohne www == | ||
+ | |||
+ | Der folgende Codeschnippsel gehört nach der RewriteBase in die .htaccess und leitet alle Anfragen der Domain auf die Subdomain "www" | ||
+ | |||
+ | <source lang="bash"> | ||
+ | RewriteCond %{HTTP_HOST} ^domain\.com$ | ||
+ | RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301] | ||
+ | </source> | ||
== urlcleaner == | == urlcleaner == | ||
− | == | + | Die Extension [http://www.contao.org/erweiterungsliste/view/urlcleaner.html urlcleaner] ermöglicht eine Weiterleitung via Konfiguration. Möchte man beispielsweise das URL-Fragment /items/ aus einem Nachrichten-Archiv entfernen, so kann man dies mit einem Eintrag in der localconfig.php erreichen. Contao schreibt dann alle URL's in den Templates um, ohne das man als User Hand anlegen muss. |
+ | |||
+ | '''Alte URL''': /news-reader/items/alias<br /> | ||
+ | '''Neue URL''': /news-reader/alias | ||
+ | |||
+ | Leider ist die alte URL mit dieser Konfiguration noch zu erreichen und kann unter Umständen in den Suchmaschinen gelistet werden. Um diesen Fehler zu beheben, genügt folgender Code in der .htaccess (ganz am Ende der Datei): | ||
+ | |||
+ | <source lang="bash"> | ||
+ | RedirectMatch 301 ^(.*)/items/(.*) $1/$2 | ||
+ | </source> | ||
+ | |||
+ | Dieser Code setzt voraus das auch alle Nachrichten-Archive via urlcleaner bereinigt wurden. Möchte man beispielsweise nur Nachrichten-Archiv '''Aktuelles''' vom URL-Fragment befreien und '''Pressemitteilungen''' soll so bleiben wie gehabt, dann ist auch via .htaccess eine Differenzierung möglich. | ||
+ | |||
+ | <source lang="bash"> | ||
+ | RedirectMatch 301 ^(.*)/aktuelles/items/(.*) $1/aktuelles/$2 | ||
+ | </source> | ||
+ | |||
+ | Das Wort "aktuelles" steht in diesem Beispiel für die Seite des Nachrichten-Archivs. |
Version vom 13. August 2011, 09:41 Uhr
Unvollständiger Artikel: dieser Artikel ist noch nicht sauber bearbeitet.
Bitte erweitere ihn und entferne erst anschliessend diesen Hinweis. |
Um Duplicate Content zu vermeiden, ist es sinnvoll URL's die den selben Inhalt zeigen weiterzuleiten. In der Regel geht das mit einem Eintrag in der .htaccess am schnellsten. Diese Anleitung setzt einen Webserver mit entsprechenden Rechten voraus.
www/ohne www
Der folgende Codeschnippsel gehört nach der RewriteBase in die .htaccess und leitet alle Anfragen der Domain auf die Subdomain "www"
RewriteCond %{HTTP_HOST} ^domain\.com$ RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]
urlcleaner
Die Extension urlcleaner ermöglicht eine Weiterleitung via Konfiguration. Möchte man beispielsweise das URL-Fragment /items/ aus einem Nachrichten-Archiv entfernen, so kann man dies mit einem Eintrag in der localconfig.php erreichen. Contao schreibt dann alle URL's in den Templates um, ohne das man als User Hand anlegen muss.
Alte URL: /news-reader/items/alias
Neue URL: /news-reader/alias
Leider ist die alte URL mit dieser Konfiguration noch zu erreichen und kann unter Umständen in den Suchmaschinen gelistet werden. Um diesen Fehler zu beheben, genügt folgender Code in der .htaccess (ganz am Ende der Datei):
RedirectMatch 301 ^(.*)/items/(.*) $1/$2
Dieser Code setzt voraus das auch alle Nachrichten-Archive via urlcleaner bereinigt wurden. Möchte man beispielsweise nur Nachrichten-Archiv Aktuelles vom URL-Fragment befreien und Pressemitteilungen soll so bleiben wie gehabt, dann ist auch via .htaccess eine Differenzierung möglich.
RedirectMatch 301 ^(.*)/aktuelles/items/(.*) $1/aktuelles/$2
Das Wort "aktuelles" steht in diesem Beispiel für die Seite des Nachrichten-Archivs.