kanonische URL

  • Hallo,


    ich möchte mein Forum eine Kanonische URL vergeben. Ich weiß das die in den Head-Bereich kommen muss und so aussehen muss:


    Code
    <link rel="canonical" href="http://www.ihreseite.de/produkt/" />


    Doch wie stelle ich es nun an, das die Kanonische URL automatisch generiert wird?


    z.B. klicke ich auf http://www.ihreseite.de/produkt/schuhe , dann sollte man im Quellcode das sehen


    Code
    <link rel="canonical" href="http://www.ihreseite.de/produkt/schuhe" />


    hat jemand ne idee ?


    mfg sakis

  • Macht aber keinen Sinn. Wenn du nur die Request-URI reinschreibst hast du noch lange keine kanonische URL.


    Wofür willst du überhaupt kanonische URLs im Head-Bereich angeben? Eigentlich sollte Sich das mit dem SEO-Plugin und ein paar zusätzlichen Einträgen in der .htaccess ganz zum größten Teil von selbst erledigen.


    Eine generelle Lösung wird sich aber nicht von allein ergeben. So sind z.B. Posts durch ThreadID & Seitenanzahl zugänglich, oder über die Post-ID. Solche Fälle müsstest du halt abfangen und dir überlegen, was davon nun die kanonische Adresse sein soll, und das wiedergeben.


    Dein beispiel oben macht aber keinen Sinn. Wenn der Inhalt eh nur unter einer URL zu erreichen ist macht die Angabe im header nicht viel Sinn.

  • Selbst die angehängte SessionID kann eine "normale" URL zu einer neuen URL machen - es ist also nicht ganz abwägig, dann eine kanonische URL anzugeben - eben ohne SessionID und unnötige Parameter.

  • Die Session-ID sollte man aus Sicherheitsgründen eh nicht anhängen (Session-Riding lässt grüßen). Und Kanonische URLs anzugeben macht eh nur Sinn für Suchmaschinen, um Double-Content zu vermeiden, und die Loggen sich ja eh nicht ein.


    Und wie gesagt, ohne ein wenig Handarbeit lässt sich das nicht ohne weiteres regeln. Mit ein paar .htaccess Einträgen lassen sich die meisten Probleme dahingehend schon eindämmen, andere (siehe Beispiel oben) lassen sich nur mit etwas mehr Aufwand lösen.

  • Die Session-ID sollte man aus Sicherheitsgründen eh nicht anhängen

    Logisch, aber genau dafür eignet sich die kanonische URL, denn dann kann der Inhalt ohne Session-ID angeben werden (Suchmaschinen erfassen zum Teil auch die Session-ID und meckern dann über doppelten Inhalt).

  • Ich möchte nur den Suchmaschinen sagen das ich unter einer URL erreichbar bin. Damit möchte ich Doppelte Metabeschreibungen sowie Doppelte "title"-Tags vermeiden. Ich habe nun gelesen das ich das auch mit der .htaccess erledigen kann. Ich muss nur folgenden code einfügen:


    Apache Configuration
    # Weiterleitung von example.com nach www.example.com:
    RewriteCond %{HTTP_HOST} !^www\.example\.de$
    RewriteRule ^(.*)$ http://www.example.de/$1 [R=301,L]


    nun ist die Frage, reicht das aus, oder sollte man noch die Kanonische URL im Head bereich einfügen ?
    Wenn ja, Wie sieht dann der Code für die Kanonische URL aus?


    mfg sakis

  • nun ist die Frage, reicht das aus, oder sollte man noch die Kanonische URL im Head bereich einfügen ?
    Wenn ja, Wie sieht dann der Code für die Kanonische URL aus?


    Nein, das reicht nicht aus. Les nochmal meinen Beitrag zum Beispiel zu den Permalinks von Posts.


    Und einen einfachen Code dafür gibts auch nicht, da muss du schon selbst Hand anlegen und die passende ELs programmieren, die je nach Seitenaufruf eine passende, kanonische URL erzeugen.