klaas: SEO mit XML-Dateien

Guten Abend,
der Content einer gesamter Webseite ist in XML-Dateien gespeichert und wird von einzelnen Unterseiten geladen, verarbeitet und angezeigt.

Wie bekomme ich den Inhalt dieser Dateien (also den eigentlichen content) von den Suchmaschinen zwar indiziert, jedoch auf die entspr. Unterseiten verweisend und nciht auf die XML-Datei!

Bsp:
Sucht man nach "moderne Herrenschuhe" soll die Suchmaschine auf www.example.org/products/schuhe/herren.php verweisen und nicht auf www.example.org/xmldata/shoes.xml, obwohl der der Suchbegriff in zwar in der XML gespeichert ist, aber in der php-Datei angezeigt wird.

Hoffe, das war verständlch :-)

  1. Hi,

    der Content einer gesamter Webseite ist in XML-Dateien gespeichert und wird von einzelnen Unterseiten geladen, verarbeitet und angezeigt.

    Wie bekomme ich den Inhalt dieser Dateien (also den eigentlichen content) von den Suchmaschinen zwar indiziert, jedoch auf die entspr. Unterseiten verweisend und nciht auf die XML-Datei!

    In dem du die Suchmaschinen die Daten genauso abrufen lässt, wie ein normaler Browser das tut ...?

    Sucht man nach "moderne Herrenschuhe" soll die Suchmaschine auf www.example.org/products/schuhe/herren.php verweisen und nicht auf www.example.org/xmldata/shoes.xml, obwohl der der Suchbegriff in zwar in der XML gespeichert ist, aber in der php-Datei angezeigt wird.

    Ja, dann verlinke doch einfach die XML-Datei gar nicht erst irgendwo.

    MfG ChrisB

    --
    RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
    1. Guten Morgen und Danke für die Antwort.

      der Content einer gesamter Webseite ist in XML-Dateien gespeichert und wird von einzelnen Unterseiten geladen, verarbeitet und angezeigt.

      Wie bekomme ich den Inhalt dieser Dateien (also den eigentlichen content) von den Suchmaschinen zwar indiziert, jedoch auf die entspr. Unterseiten verweisend und nciht auf die XML-Datei!

      In dem du die Suchmaschinen die Daten genauso abrufen lässt, wie ein normaler Browser das tut ...?

      Wie meinst du das?

      Ja, dann verlinke doch einfach die XML-Datei gar nicht erst irgendwo.

      Die wird ja nirgends verlinkt sondern nur geparst. Trotzdem hat Google sie im Index - die Unterseiten leider nicht.

      klaas

      1. Ja, dann verlinke doch einfach die XML-Datei gar nicht erst irgendwo.
        Die wird ja nirgends verlinkt sondern nur geparst. Trotzdem hat Google sie im Index - die Unterseiten leider nicht.

        Siehst du, das ist unter normalen Umständen kaum glaubhaft. Vermutlich wurden sie in der Vergangenheit verlinkt oder irrtümlich als Teil einer Sitemap bei Google eingereicht.
        Auf jeden Fall wirst du jetzt Google Webmastertools kennen lernen um die Seiten aus dortigem Index zu intfernen.
        Solange du direkte Requests auf diese Files hat darfst du in .htaccess auch dies anwenden:

        RedirectMatch 410 ".xml"

        mfg Beat

        --
        ><o(((°>           ><o(((°>
           <°)))o><                     ><o(((°>o
        Der Valigator leibt diese Fische
      2. Hi,

        In dem du die Suchmaschinen die Daten genauso abrufen lässt, wie ein normaler Browser das tut ...?

        Wie meinst du das?

        Dass Suchmaschinen Inhalte über HTTP genauso abrufen, wie normale Clients, ist dir doch wohl bewusst?

        Ja, dann verlinke doch einfach die XML-Datei gar nicht erst irgendwo.

        Die wird ja nirgends verlinkt sondern nur geparst. Trotzdem hat Google sie im Index - die Unterseiten leider nicht.

        Dann hast du - oder jemand anderes - sie aber höchstvermutlich mal verlinkt.

        Nutze eine robots.txt, um das indizieren zu untersagen.

        MfG ChrisB

        --
        RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
  2. Moin!

    1. Schlechteste Methode:

    robots.txt

    User-Agent: *
    Disallow: /xmlDir/
    Disallow: *.xml

    Hinweis: Die Benutzung von Wildcards ist kein Standard. google und Slurp unterstützen dies jedoch.

    2. Etwas bessere Methode:

    .htaccess

    Es gibt keinen Grund weshalb von außen mit dem http-Protokoll auf diese Dateien zugegriffen werden muss: Verbiete also den Zugriff mit .htaccess

    <FilesMatch  ".xml$">
        Order Allow,Deny
        Deny from All
    </FilesMatch>

    3. Beste Methode

    Data-Dir

    Lege die xml-Dateien in einem Verzeichnis außerhalb Deines document-root ab, so dass der Webserver diese gar nicht ausliefern kann.

    MFFG (Mit freundlich- friedfertigem Grinsen)

    fastix

      1. Etwas bessere Methode:
        .htaccess
        Es gibt keinen Grund weshalb von außen mit dem http-Protokoll auf diese Dateien zugegriffen werden muss: Verbiete also den Zugriff mit .htaccess

      <FilesMatch  ".xml$">
          Order Allow,Deny
          Deny from All
      </FilesMatch>

      Mein Einwand.
      Es ist zwar wahr, dass die Files existieren.
      Der Absicht nach existieren Sie aber nicht als eine Internet-Ressource.

      Von daher wäre es angebracht, einen 410 Statuscode zu senden, damit die Ressourcen auch aus existierenden Directories gelöscht werden. Das ist bei 403 oder 404 nämlich nicht der Fall.
      RedirectMatch 410 /somedir/.*.xml/
      Noch besser wäre es, zusätzlich diese Ressourcen ausserhalb von http-root zu verwalten. Ganz so wie du sagst:

      1. Beste Methode
        Data-Dir

      Lege die xml-Dateien in einem Verzeichnis außerhalb Deines document-root ab, so dass der Webserver diese gar nicht ausliefern kann.

      mfg Beat

      --
      ><o(((°>           ><o(((°>
         <°)))o><                     ><o(((°>o
      Der Valigator leibt diese Fische
      1. Moin!

        Von daher wäre es angebracht, einen 410 Statuscode zu senden, damit die Ressourcen auch aus existierenden Directories gelöscht werden. Das ist bei 403 oder 404 nämlich nicht der Fall.

        RedirectMatch 410 /somedir/.*.xml/

        Um den Server dauerhaft zu belasten? Das erledigt die robots.txt um einiges billiger.

        MFFG (Mit freundlich- friedfertigem Grinsen)

        fastix

    1. Hallo und Danke soweit.

      1. Beste Methode

      Data-Dir

      Lege die xml-Dateien in einem Verzeichnis außerhalb Deines document-root ab, so dass der Webserver diese gar nicht ausliefern kann.

      Das Blöde dabei ist aber, dass die Unterseiten eben _nicht_ im Google-Index auftauchen sondern ausschließlich die XML-Dateien. Wenn ich die nun rauswefe (was ich nach wie vor will) hab ich (außer der Startseite) gar nüscht mehr im Google drin (was ich nach wie vor nicht will!).

      1. Moin!

        Das Blöde dabei ist aber, dass die Unterseiten eben _nicht_ im Google-Index auftauchen sondern ausschließlich die XML-Dateien. Wenn ich die nun rauswefe (was ich nach wie vor will) hab ich (außer der Startseite) gar nüscht mehr im Google drin (was ich nach wie vor nicht will!).

        Dann benutze zusätzlich mod-rewrite um von bei Google & Co. gespeicherten xml-Seiten, deren Abruf unerwünscht ist, auf Die entsprechenden Seiten umzuleiten. Ich vermute ja deren Benennung folgt einem Schema. Benutze den Statuscode 302.

        MFFG (Mit freundlich- friedfertigem Grinsen)

        fastix

      2. Hi,

        Das Blöde dabei ist aber, dass die Unterseiten eben _nicht_ im Google-Index auftauchen sondern ausschließlich die XML-Dateien.

        So viel *kannst* du doch eigentlich gar nicht falsch gemacht haben beim Aufbau der Seite ...

        MfG ChrisB

        --
        RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?