Grundlagen kurze URLs (SEO und SEF)

Wofür soll das gut sein?

Es geht um die bessere Indizierbarkeit durch Searchengines (Stichwort: Search friendly URLs). Manche Searchengines mögen Parameter nicht.
Ebenso mögen manche Suchserver die Umlenkung zur Hauptseite nicht.
Wies geht zeigen wir hier ...

 

Dazu verwenden wir mod_rewrite vom Apache Webserver. Zuerst legt man eine .htaccess an, in der man das Umschreiben der URL veranlasst.

RewriteEngine On
#Articles
RewriteRule ^article([1-9][0-9]*).html /modules/news/article.php?storyid=$1

D.h. aus der Anfrage meineurl/article10.html wird meineurl/modules/news/article.php

In vielen CMS Systemen lässt sich das Gegenstück relativ leicht einbinden.

In dem CMS muss ein sogenannter outputfilter aktiviert werden. Viele CMS bieten solch eine Lösung an.

Dort setzt man dann als Filter folgendes Skript ein:

<?php
function x_rewrite_url($tpl_output, &$smarty) {
$in = array(
#article
"/modules\/news\/article.php\?storyid=([1-9][0-9]*)&page=([1-9][0-9]*)/",
"/modules\/news\/article.php\?storyid=([1-9][0-9]*)/",
);
$out = array(
"article\\1_\\2.html" ,
"article\\1.html" ,
);
$tpl_output = preg_replace($in, $out, $tpl_output);
return $tpl_output;
}
?>

Angepasst werden muss in diesem Skript das Array in und out. Es wird nach dem regulären Ausdruck aus $in gesucht und durch den Teil im Array $out ersetzt. Dadurch werden die vom CMS generierten Links (z.B. /modules/news/article.php?storyid=14) in die "schönen" URLs (z.B. article14,html) übersetzt.

:wq

Kommentar schreiben


Sicherheitscode
Aktualisieren

Copyright © 2012 baecker.com. Alle Rechte vorbehalten.
Joomla! ist freie, unter der GNU/GPL-Lizenz veröffentlichte Software.