Suchmaschinenfreundliche URLs

  • 0 x
    54 Beiträge
    0 Hilfreiche Beiträge
    02. 10. 2004, 21:17

    Hallo,

    ich habe folgendes problem. ich möchte gerne die links, die typo3 ausgibt (index.php?id=18-), auf die endung .[b:b1f416294d]htm[/b:b1f416294d] umstelllen, da die statischen seiten vorher auf diese endung lauteten und daher auch so in den suchmaschinen plaziert sind.

    ich habe folgende .htaccess auf den server geladen:

    [code:1:b1f416294d]RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^[^/]*.html$ index.php[/code:1:b1f416294d]

    das funktioniert zwar, aber leider werden die dateien mit der endung .html angezeigt. habe in der zeile rewriteRule das html auf htm geändert, aber wenn ich auf der seite einen link anklicke, gibt er als endung trotzdem .html an.

    muss ich da noch irgendwas in typo3 angeben?

    gruss
    christian


  • 1
  • johanness johanness
    Jedi-Ratsmitglied
    0 x
    916 Beiträge
    0 Hilfreiche Beiträge
    02. 10. 2004, 22:49

    Schau dir die deutsche Typo3-Dokumentation an! Da ist alles beschrieben!

  • 0 x
    54 Beiträge
    0 Hilfreiche Beiträge
    02. 10. 2004, 22:58

    hi,

    nach dieser dokumentation habe ich es ja auch gemacht, klappt ja auch wunderbar.

    aber mein problem ist, statt der endung startseite.[b:734cbe1c5c]html[/b:734cbe1c5c], möchte ich dass startseite.[b:734cbe1c5c]htm[/b:734cbe1c5c] angezeigt wird, dass klappt irgendwie nicht richtig.

  • johanness johanness
    Jedi-Ratsmitglied
    0 x
    916 Beiträge
    0 Hilfreiche Beiträge
    02. 10. 2004, 23:02

    Und was ist an .htm besser? Ich mag das ganz und gar nicht #paralyzed# Wieder so ein Zeug, das von MS eingeführt wurde...

  • 0 x
    54 Beiträge
    0 Hilfreiche Beiträge
    02. 10. 2004, 23:14

    hi,
    eigentlich ist da gar nichts besser :D

    es ist so, die seiten bestehen bereits als dateien mit der endung htm, sind auch so in den suchmaschinen aufgenommen.

    nun sollen die seiten in typo3 übernommen werden, und wegen den suchmaschinen sollten die seiten natürlich wieder den gleichen namen haben.

    gruss
    christian

  • robert.meyer robert.me...
    Jedi-Ratsmitglied
    0 x
    553 Beiträge
    0 Hilfreiche Beiträge
    03. 10. 2004, 02:18

    Hallo,

    Funktioniert mit folgender Variante mit Änderungen direkt im Quelltext, ist aber auch nicht in einer Live-Umgebung getestet:

    Version 3.7.0:
    Datei typo3/sysext/cms/tslib/class.tslib_fe.php
    Zeile 558 (ca.) ersetzen durch
    [code:1:c6753b2fdc] if (!$fI['path'] && $fI['file'] && ((substr($fI['file'],-5)=='.html') || (substr($fI['file'],-4)=='.htm'))) {
    [/code:1:c6753b2fdc]

    Ebenfalls muss in der htaccess noch durch die Datei .htm ergänzt werden, so dass auch .htm-Datei in die index.php aufgelöst werden.
    [code:1:c6753b2fdc]RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^[^/]*.html$ index.php
    RewriteRule ^[^/]*.htm$ index.php[/code:1:c6753b2fdc]

    Diese Variante ist aber nicht besonders schön. URLs werden dann weiterhin mit .html erzeugt - .htm-Dateien werden lediglich interpretiert.

    Ggf. bessere Variante:
    Eine Datei mittels htmToHtml.php ersetzt in einem String die Zeichenkette ".htm" durch ".html" und macht dann auf diese neue URL ein Redirect.
    [code:1:c6753b2fdc]RewriteRule ^[^/]*.htm$ htmToHtml.php[/code:1:c6753b2fdc]

    Wie auch immer: Der Effekt ist in beiden Fällen gleich, letzte Variante nur wesendlich problemloser. Bestehende Links in Suchmaschinen werden weiterhin aufgelöst und zusätzlich langfristig durch die neue ersetzt.

  • 0 x
    54 Beiträge
    0 Hilfreiche Beiträge
    03. 10. 2004, 12:30

    hey, danke für die schnelle antwort :D :D :D
    das hat ja super geklappt

  • 1