Themes | Widgets | WordPress Tutorials
Tutorials für Wordpress Themes | Widgets und Design.
Home

Feb 08

Problem

Alle Anfragen an zB.: die-hatta.org (z.B. Subdomains á la style.die-hatta.org oder “vertipper-subs” á la ww.die-hatta.org) sollen permanent umgeleitet werden auf http://www.die-hatta.org.

Einfache Umleitungen mittels und .-Datei:

RewriteEngine on
RewriteBase /

%{HTTP_HOST} !^\.die-hatta\.org$ [NC]
^(.*)$ ://.die-hatta.org/$1 [L,R=]

Syntax:

In der Condition:
%{HTTP_HOST} : In dieser Variablen steht die angeforderte
[NC] : Nicht case-sensitive

In der Rule:
^ : Am Anfang
(.*) : .* string wird in $1 geschrieben
$ : Am Ende

[L] : Nach dieser Regel keine weitere ausführen
R=: permanente

Wir sagen also:

Wenn die angeforderte NICHT .die-hatta.org ist, benutze die und setze http://www.die-hatta.org/ und alles was nach dem / angefordert wurde ($1, z.B. seite1.php). Außerdem soll die permanent (R=) gelten.

Vielen Dank hierbei an SEO-Scout.org für den endlich mal logischen Artikel zum WWW oder nicht WWW vor der Domain 

Weitere Beiträge

Tags: , , , , , , , , , , , , ,

 

Reader's Comments

  1. Toto | 12th February 2008 at 14:00

    Es passt nicht ganz zum Topic, hilft aber vielleicht auch dem einen oder anderen:

    Ich habe bei mir Links per Standardpermalink generieren lassen, also:
    http://www.dark-hh.de/2008/01/25/master-and-servant-kir/

    Dies ist natürlich schön suchmaschinenfreundlich und z.B. Google verweist auch auf viele dieser Seiten. Nun stellte ich fest, dass für zukünftige Erweiterungen, diese Permalinkstruktur nicht gut ist. Ich brauche eine Struktur wie folgt:
    http://www.dark-hh.de/posts/2008/01/25/master-and-servant-kir/

    Also mit einem “posts” zwischen URL und dem Rest des URI. In Wordpress ist dies schnell erledigt, und die Seite reagiert wie gewohnt, aber leider zeigen nun alle indizierten Seiten ins Nirvana, so dass diese mittelfristig bei Google rausfliegen und Suchende frustriert von meiner Seite verschwinden, wenn sie ein “Diese Seite existiert nicht mehr” zu sehen bekommen.

    Als Lösung bietet sich eine weitere Rewrite Condition in der .htaccess an:

    RewriteCond %{REQUEST_URI} ^/[0-9]{4}/[0-9]{2}/[0-9]{2}/.*$ [NC]
    RewriteRule ^(.*)$ http://www.dark-hh.de/posts/$1 [L,R=301]

    Diese macht folgendes:
    1. Prüfen ob die REQUEST_URI mit dem Format /2008/01/17 o.ä. anfängt, wenn ja, dann
    2. Umschreiben der URL indem vor dem URI ein http://www.dark-hh.de/posts/ gestellt wird.

    Aus

    http://www.dark-hh.de/2008/01/25/master-and-servant-kir/

    wird also

    http://www.dark-hh.de/posts/2008/01/25/master-and-servant-kir/

    Somit kommt der Suchende nun wieder zum korrekten Ergebnis. Und das schönste ist, wir teilen Google & Co mit dem [R=301] automatisch mit, dass die angeforderte Seite verschoben wurde (301 = Permanent Redirect). Bei der nächsten Indizierung wird Google die Indexe anpassen und kein Content geht verloren.

Leave a Reply