Websites und CMS Systeme - Umbraco PHP-Redirects

Umbraco – 301 Redirects

HTTP 301 Redirects sind ein wichtiges Instrument, um das “Vertrauenskonto” von Suchmaschinen trotz Neuerstellung der Website zu übernehmen (mehr dazu unter SEO beim Website Relaunch – Wie Sie die Katastrophe verhindern). Viele Entwickler und Administratoren stehen dabei vor einem Konfigurationsproblem, wenn z.B. mit der Neuerstellung der Website ein Technologie-Wechsel durchgeführt wird.

Problemstellung beim Technologiewechsel

Die alte Website wurde mit PHP entwickelt, bzw. wurde ein CMS System verwendet, das auf PHP aufsetzt (WordPress, Joomla, Typo3, etc.). Die neue Website soll auf dem CMS System Umbraco erstellt werden, das auf ASP.NET unter Windows läuft.

Es gibt Module für Umbraco, die einen 301 Redirect Permanently senden, diese funktionieren jedoch nur, wenn Umbraco die angeforderte URL zu fassen bekommt. Für den Aufruf einer PHP Seite ist üblicherweise unter Windows kein Handler definiert, und der Static Content Handler übernimmt die Verarbeitung der Seite. Natürlich erscheint eine 404 – Not found Fehlermeldung.

Auch wenn für PHP der ASP.NET PageHandler konfiguriert wird, ignoriert Umbraco die .php Extension und liefert wiederum eine 404 Not found Meldung.

301 URL Tracker

Ein Umbraco Package, das auch automatisch für umbenannte Seiten den 301 Redirect erstellt, heißt 301 URL Tracker und kommt aus der Umbraco community. Das Package ist sehr flexibel und zuverlässig, einzig die Installation läßt etwas zu wünschen übrig. Sollte nach der Installation das Dialogfenster nicht öffnen bzw. einen Fehler anzeigen, finden Sie hier eine Lösung.

Nun müssen wir nur noch sicherstellen, dass Umbraco für die Verarbeitung der php Files verantwortlich wird und diese Dateien wie normale aspx – Dateien behandelt.

Redirect von .php auf .aspx

In der Datei /config/UrlRewriting.config können Redirects eingetragen werden. Um den 301 URL Tracker für .php Dateien verwenden zu können, leiten wir diese Anforderungen in .aspx Dateien um. Um die Übersichtlichkeit zu bewahren, werden diese auf den Ordner /legacy umgeleitet, den es nicht gibt. Später greift der 301 Redirect und die Seite wird zum neuen Ort umgeleitet.

In die <rewrites></rewrites> Section der UrlRewriting.config Datei folgende Zeilen kopieren:

        <add name="RedirectPhpToAspx"
             virtualUrl="^~/(.*).php"
             rewriteUrlParameter="ExcludeFromClientQueryString"                 
             destinationUrl="~/legacy/$1.aspx"
             ignoreCase="true" />

Damit werden alle *.php Dateien umgeleitet in /legacy/*.aspx. Wichtig ist, dass dabei die Parameter erhalten bleiben. So können auch Aufrufe wie /index.php?id=231 nach http://server.de/ueber-uns/ umgeleitet werden.

Erstellen eines Redirects in Umbraco

Das Tool 301 URL Tracker erstellt einen neuen Knoten “301 URL Tracker” unter “Settings”.  Über das Context-Menü (rechte Maustaste) kann ein neuer Redirect angelegt werden. Über einen Dialog wählt man die Seite aus, die das Ziel des Redirects sein soll. Nachdem der Redirect angelegt ist, können URL Anforderungen eingetragen werden, die auf diese Seite verweisen sollen.

Beispiel: Seite/Knoten “Über uns”, Add custom mapping /legacy/index.aspx?id=231

Es können auch mehrere URL Anforderungen auf dieselbe Seite verweisen. Nach Möglichkeit sollte jedoch jede ursprüngliche Seite wieder ein eigenes neues Ziel bekommen, um Benutzer und auch Suchmaschinen optimal mit Informationen zu versorgen.

 

 

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>