(gelöst) .htaccess und RewriteRule bei Pretty URL`s

CMS made simple ist grundsätzlich in der Lage, für Suchmaschinen optimierte URLs auszugeben. Die Feinheiten rund um Pretty URLs & SEO können hier diskutiert werden.
Locked
markus0711
Forum Members
Forum Members
Posts: 45
Joined: Thu Jun 10, 2010 7:11 am

(gelöst) .htaccess und RewriteRule bei Pretty URL`s

Post by markus0711 »

Hallo,

weil ich nach Recherche im Forum leider nur "knapp dran" an einer Antwort war,
hier meine Verständnisfrage:

Ich habe Pretty URLS`s gemäß Anleitung erfolgreich aktiviert.

Nun gibt es laut Google Webmaster Tool für die Seite Doppelte Title Tags, weil im Prinzip alle Seiten doppelt gefunden wurden, z.B.:
www.bite.de/index.php?page=Einsatzplanung und
www.bite.de/Einsatzplanung/Einsatzplanung-mit-Padis/

Ich dachte eigentlich, dass über die .htaccess die Schreibweise index.php?page in die Schreibweise mit Pretty Url`s umgeschrieben wird, damit es keine doppelten Seiten gibt.

Habe ich das falsch verstanden oder ist in der .htaccess der Fehler?

Code: Select all

Options +FollowSymLinks
    RewriteEngine on
    
    RewriteCond %{HTTP_HOST} !^www\.bite\.de$
    RewriteRule ^(.*)$ http://www.bite.de/$1 [L,R=301]

    
    RewriteBase /

    RewriteCond %{REQUEST_URI} !/$
    RewriteCond %{REQUEST_URI} !\.
    RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.+)$ index.php?page=$1 [QSA]
Last edited by markus0711 on Fri Nov 05, 2010 8:02 am, edited 1 time in total.
NaN

Re: .htaccess und RewriteRule bei Pretty URL`s

Post by NaN »

Das hast Du falsch verstanden.
Es ist genau umgekehrt.
Nicht die .htaccess Datei sorgt für Pretty URLs sondern das CMS.

Das CMS ändert - wenn in der config.php $config['url_rewriting'] = 'mod_rewrite'; gesetzt ist - die Links zu den Seiten von domain/index.php?page=alias auf domain/alias.

In der .htaccess Datei steht nur drin, was mit Anfragen, die einem bestimmten Schema entsprechen, gemacht werden soll.
D.h. in der .htacces Datei wird auf dem Server (der Besucher bekommt davon nichts mit) die angeforderte Adresse domain/alias wieder zu domain/index.php?page=alias umgeschrieben, weil der Server mit der ursprünglichen Anfrage nichts anfangen kann (weil ein derartiges Verzeichnis ja nicht existiert).

Die reguläre Adresse (mit index.php ...) bleibt weiterhin erreichbar.
Muss sie ja auch, weil das nun mal die Adresse zum CMS ist.
Eine andere gibt es nicht.

Um zu verhindern, dass Suchmaschinen beide Seiten indizieren, gibt es das canonical-Ding im Template:

Code: Select all


{if isset($canonical)}
   <link rel="canonical" href="{$canonical}" />
{elseif isset($content_obj)}
   <link rel="canonical" href="{$content_obj->GetURL()}" />
{/if}

Somit wird der Suchmaschine gesagt, welche Adresse nun indiziert werden soll.
D.h. auch wenn Du die seite mit domain/index.php?page=alias aufrufst, wird hier domain/alias als Adresse angegeben. Somit ist der Suchmaschine völlig wurscht, unter welchen tausend Adressen Deine Seite noch alles erreichbar ist.

Eine Möglichkeit wäre, via .htaccess den direkten Zugriff auf die index.php zu verbieten bzw. nur vom Server aus zuzulassen oder per 301 redirect auf die pretty URL umzuleiten. Allerdings gibt es Situationen, in denen keine Pretty URLs generiert werden können (z.B. weil das ein oder andere Modul das nicht unterstützt). Außerdem muss dazu die Pretty URL bereits in der .htacces Datei bekannt sein. Wie die korrekte Pretty URL lautet, weiß aber nur das CMS selbst (was ja erst nach der .htacces Datei ausgeführt wird). Mal ganz davon abgesehen, dass es der Prformance nicht sonderlich dienlich ist, den Besucher erst dreimal hin und herzuleiten bis die eigentliche Webseite erscheint. Daher würde ich von solchen Spielereien eher abraten.

Bei dynamisch generierten Seiten ist duplicate content nunmal leider nicht zu vermeiden.
Eine gute Suchmaschine weiß das.
Und ein guter Webdesigner auch.
Für beide gibt es Möglichkeiten, das zu minimieren.
Aber leider lässt es sich nie ganz vermeiden.
markus0711
Forum Members
Forum Members
Posts: 45
Joined: Thu Jun 10, 2010 7:11 am

Re: .htaccess und RewriteRule bei Pretty URL`s

Post by markus0711 »

Herzlichen Dank für die genauen und ausführlichen Ausführungen. :)
In diesem Fall hab ich dann wenigstens meins dazu getan.
Wollte einfach vermeiden, dass ich aus Unwissenheit was übersehe oder vergesse.

Und an der Stelle noch ganz allgemein ein großes Lob an dieses Forum und die Administratoren / User für die zumeist umgehende Hilfe!
Locked

Return to “Suchmaschinenoptimierung (SEO)”