© Excellent backgrounds/Shutterstock.com
SEO für Angular-Anwendungen

Blindflug im Web


Suchmaschinenoptimierung (Search Engine Optimization, SEO) ist ein sehr umfangreiches Thema. In diesem Artikel möchte ich beleuchten, wie die Indizierung von Google funktioniert, warum Google keine Seiten einer Angular-Anwendung crawlen kann und wie wir dieses essenzielle Problem angehen können.

SEO besteht aus einer Reihe von Techniken, die für mehr Traffic auf der eigenen Webseite, dem Blog oder in Bezug auf eine App sorgen sollen. Dafür wird versucht, das eigene Ranking in den Suchergebnissen bekannter Suchmaschinen wie Google, Yahoo usw. zu verbessern. Um die Techniken ein wenig besser zu verstehen, schauen wir uns zunächst an, wie eine Suchmaschine eigentlich funktioniert.

Suchmaschinen lassen konstant Programme über sämtliche Webseiten im Internet laufen, sogenannte Spider. Diese durchsuchen alle Teile dieser Seiten nach Informationen, die für eine Suche ggf. von Interesse sein könnten, und speichern sie in einer speziellen Datenbank, dem Suchindex. Den Spidern von Google kann man dabei auch den Zugriff verwehren, indem man die Datei robots.txt entsprechend anpasst.

Gibt man einen Suchbegriff etwa in Google ein, erhält der Suchindex zunächst alle Seiten, die mit irgendeinem der eingegebenen Wörter einen Treffer liefern. Durch individuelle Algorithmen, die sich von Suchmaschine zu Suchmaschine unterscheiden, wird dann geprüft, wo die Suchbegriffe in den entsprechenden Seiten enthalten sind, also bspw. im Seitentitel oder in der Metabeschreibung. Der Algorithmus kann zudem prüfen, ob alle Wörter auf der Seite enthalten sind, in welcher Reihenfolge sie vorkommen und so weiter. Nach etlichen Berechnungen gibt die Suchmaschine dann im besten Fall die relevantesten Webseiten an den Suchenden zurück.

Trivia

Google hat seinerzeit einen berühmten Algorithmus entwickelt, der darauf basiert, wie viele andere Seiten auf eine bestimmte Webseite verlinken. Die Idee dahinter war, dass eine Seite besonders relevant sein muss, wenn möglichst viele andere Webseiten das augenscheinlich ebenfalls so sehen und auf diese Seite verlinken.

Die Algorithmen von Suchmaschinen werden selbstverständlich ständigen Verbesserungen unterzogen, um den Nutzern die bestmöglichen Ergebnisse präsentieren zu können. Die meisten modernen Algorithmen machen dabei auch immer mehr Gebrauch von Machine Learning, um die Suchergebnisse zu verbessern.

Wie finden Suchmaschinen meine Seite?

Es gibt einige grundlegende Dinge, die man tun kann, um der Suchmaschine mitzuteilen, welche Informationen man bereitstellt:

  • Fokussieren auf den Inhalt: Das wichtigste Element ist der Content. Keine Tricks und Kniffe können eine Seite gut ranken lassen, wenn der Inhalt nicht gut ist. Daraus ergibt sich: Guter Content sorgt für mehr Besucher auf der Webseite, dies wiederum sorgt für eine höhere Click-Through-Rate und damit für ein besseres Ranking in Suchmaschinen.

  • Angeben von Titel und Metatags: Natürlich wird die Angabe eines Seitentitels und das Einstellen von Metatags keine Webseite auf magische Weise ganz nach oben in den Suchergebnissen katapultieren. Dennoch sind diese beiden Dinge für die Click-Through-Rate sehr wichtig und ermutigen andere Leute, eher auf die eigene als auf eine Konkurrenzseite zu verlinken.

  • Nutzen von Canonical Tags

  • Erstellen von crawlbaren URLs

  • Bereitstellen einer Sitemap für den Google Bot

  • Hochhalten der Geschwindigkeit einer Seite

Nach dem gleichen Prinzip wie die Suchmaschinen-Crawler funktionieren auch Social Media Crawler auf Plattformen wie Facebook oder Twitter. Wann immer wir einen Link teilen, durchläuft der Crawler der Social-Media-Plattform den Inhalt der Zielseite. Dabei kann es vorkommen, dass von dort ein Bild oder der Seitentitel abgerufen wird, um unser Posting optisch aufzuwerten.

Crawling von Angular-Anwendungen: das Problem

Man könnte nun annehmen, dass die Berücksichtigung sämtlicher oben genannter Punkte ausreichend ist, damit die Suchmaschinen-Crawler die eigene Seite gut durchsuchen können. So einfach ist es leider nicht. Schaut man sich den Quelltext einer Angular-Anwendung im Browser an, stellt man fest, dass der Code aus Listing 1 das Einzige i...

Neugierig geworden? Wir haben diese Angebote für dich:

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang