it-swarm.com.de

Erstellen Sie einen Google-Index mit über 90.000 Nutzerprofilen

Ich habe eine große Anzahl von Benutzerprofilen, die in diesem Schema gehostet werden. https://example.com/stats.php?player=name (Es ist nicht die schönste URL, aber .htaccess verlangsamt meine Website dramatisch und ich verstehe Apache2.conf nicht.) Wie kann ich Google dazu bringen, alle diese Seiten dynamisch zu indizieren, ohne alle 90.000 Konten in sitemap.xml eingeben zu müssen?

7
Dalton Edwards

Sitemaps können wie Webseiten dynamisch sein. Lassen Sie einfach ein PHP -Skript diese Namen aus der Datenbank abrufen und eine Schleife erstellen, um das XML für jeden einzelnen auszugeben. Stellen Sie außerdem sicher, dass Sie den richtigen Inhaltstyp für Ihr XML ausgeben. Das ist es.

Der folgende Code ist ein grundlegendes Skript zum Generieren einer dynamischen XML-Sitemap. Bitte beachten Sie, dass dies nicht nur ein Beispiel ist, das Sie oder jeden, der eine dynamische Sitemap erstellen möchte, in die richtige Richtung weisen soll. Hier sollte es wirklich eine bessere Fehlerprüfung und -behandlung geben.

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
$query = "SELECT name FROM users";
if ($result = mysqli_query($link, $query)) {
    echo header("Content-type: text/xml");
?>
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<?php
    $date = date('Y-m-d');
    while ($row = mysqli_fetch_assoc($result)) {
?>
     <url>
      <loc>https://domain.com/stats.php?player=<?php echo $row['name']; ?></loc>
      <lastmod><?php echo $date; ?></lastmod>
      <changefreq>monthly</changefreq>
      <priority>0.8</priority>
   </url>
<?php       
    }
    mysqli_free_result($result);
?>
</urlset> 
<?php   
}
mysqli_close($link);
?>

Beachten Sie, dass eine einzelne Sitemap möglicherweise nur 50.000 Datensätze enthält, sodass dieses Skript seine Grenzen hat. Sie sollten es jedoch ändern können, um mehrere Sitemaps zu verarbeiten, wodurch Sie über die 50.000-Grenze hinauswachsen können.

12
John Conde

Eine Sitemap hilft normalerweise nicht dabei, Seiten zu indizieren. Siehe Das Sitemap-Paradoxon .

So lassen Sie Seiten indizieren:

  1. Sie müssen von einer anderen Seite oder vorzugsweise von mehreren anderen Seiten auf jede Seite verlinken.
  2. Fügen Sie in jedes Profil genügend eindeutige Inhalte ein, damit Google die Seiten nicht als Duplikat ansieht.
  3. Bieten Sie jedem, der über die Google-Suche auf die Seite gelangt, eine gute Erfahrung mit Zielseiten. Wenn Google die Seite indiziert, aber dann feststellt, dass niemand darauf klickt, oder jeder Klick zurückkehrt, um auf ein anderes Ergebnis zu klicken, sinkt das Ranking oder fällt ziemlich schnell aus dem Index.

Im Allgemeinen sind Benutzerprofilseiten keine großartigen Kandidatenseiten für die Aufnahme in den Google-Suchindex. Sie haben normalerweise nicht viel Inhalt, noch sind sie gute Landing Pages.

3