SEO für Hexo
So optimieren Sie eine Hexo-Website für Suchmaschinen. Hexo erzeugt reines HTML, doch Sitemaps, robots.txt, Meta-Beschreibungen, Canonicals, strukturierte Daten und stabile Permalinks hängen von Plugins und der Konfiguration ab.
Sprachen
Hexo ist ein statischer Website-Generator auf Basis von Node.js: hexo generate kompiliert Markdown zu reinem statischem HTML, sodass Googlebot den vollständigen Inhalt beim ersten Abruf ohne JavaScript-Rendering-Warteschlange lesen kann. Das schafft gute Voraussetzungen für das Crawling, ist aber noch keine vollständige SEO-Lösung. Die meisten Standard-Themes liefern weder Sitemap und robots.txt noch beitragsspezifische Meta-Beschreibungen, Canonicals oder strukturierte Daten. Diese Funktionen kommen über _config.yml, Frontmatter-Felder, Theme-Anpassungen und Plugins hinzu. Die größten Risiken sind eine falsche url:-Angabe, datumsbasierte Standard-Permalinks, die beim Umbenennen Links brechen, sowie automatisch erzeugte dünne Kategorie- und Tag-Archive. Für Baidu beseitigt die statische Ausgabe ein echtes Crawling-Hindernis, garantiert aber weder Indexierung noch Rankings.
TL;DR — Hexo erstellt Ihren Blog vorab als einfache HTML-Dateien. Google sieht den Inhalt daher schon beim ersten Abruf einer Seite, ohne auf JavaScript warten zu müssen. Das ist der einfache Teil. Hexo fügt jedoch weder Sitemap noch
robots.txt, Meta-Beschreibungen oder Canonical-Tags automatisch hinzu. Diese Funktionen aktivieren Sie mit Plugins und Konfigurationseinstellungen.
Was Hexo ist
Hexo ist ein kostenloses Blogging-Framework auf Basis von Node.js. Sie schreiben
Beiträge in Markdown, führen hexo generate aus, und Hexo wandelt alles in fertige
HTML-Dateien um. Diese Dateien laden Sie zu einem Hoster wie GitHub Pages, Netlify oder
Cloudflare Pages hoch. Fordert Google oder ein Leser eine Seite an, wird sofort das
vollständige HTML ausgeliefert; der Browser muss nichts mehr zusammensetzen. Evidence for this claim Hexo generates static site files from source content. Scope: Hexo static generation. Confidence: high · Verified: Hexo documentation
Das ist für SEO vorteilhaft: Text und Links stehen bereits ab dem ersten Byte in der Seite, sodass Google kein JavaScript ausführen muss, um den Inhalt zu finden. Hexo gehört zur selben Familie wie Hugo und Jekyll; alle erzeugen die Seiten vorab (siehe statische Website-Generatoren).
Was Hexo nicht für Sie erledigt
Hier geraten Einsteiger häufig in Schwierigkeiten: Einer neuen Hexo-Website mit Standard-Theme fehlen die meisten grundlegenden SEO-Bausteine. In der Regel müssen Sie Folgendes ergänzen:
- Eine XML-Sitemap – installieren Sie das Plugin
hexo-generator-sitemap. Evidence for this claim The official Hexo sitemap generator creates sitemap.xml output. Scope: hexo-generator-sitemap plugin. Confidence: high · Verified: Hexo sitemap generator - Eine
robots.txt– installieren Siehexo-generator-robotstxtoder legen Sie eine Datei im Quellordner ab. - Meta-Beschreibungen – fügen Sie jedem Beitrag ein Feld
description:hinzu; die meisten Themes benötigen zudem eine kleine Template-Anpassung, damit es ausgegeben wird. - Canonical-Tags – das hängt vom Theme ab; das beliebte NexT-Theme unterstützt sie nach entsprechender Konfiguration.
Die zwei wichtigsten Einstellungen vor dem Start
In Ihrer Datei _config.yml:
url:muss Ihre tatsächliche Live-Adresse mithttps://enthalten, zum Beispielhttps://yourdomain.com. Ist der Wert falsch, verweisen Sitemap, Canonical und Feed auf die falsche Adresse.permalink:steuert das URL-Muster. Standardmäßig steht das Datum in jeder URL. Viele bevorzugen das schlankere Muster:title/. Unabhängig von Ihrer Wahl gilt: Ändern Sie die URL eines Beitrags später nicht ohne Weiterleitung, da sonst Links brechen und Ranking-Signale verloren gehen.
Der häufigste Irrtum
„Es ist statisches HTML, also funktioniert SEO automatisch.“ Nein. Statisches HTML bedeutet lediglich, dass Google den Inhalt leicht crawlen kann. Das ist ein Vorsprung, aber noch nicht das Ziel. Sie benötigen weiterhin Sitemap, Meta-Beschreibungen, Canonical-Tags und gute Inhalte. Der statische Ansatz verhindert nur die JavaScript-Indexierungsprobleme typischer Single-Page-Anwendungen.
Möchten Sie die vollständige Fassung mit allen Plugins, Korrekturen für das NexT-Theme, der Duplicate-Content-Falle bei Kategorie- und Tag-Archiven, strukturierten Daten und Baidu? Wechseln Sie zum Tab Fortgeschritten.
TL;DR — Hexo (
hexo generate) erzeugt reines statisches HTML, sodass der Inhalt im ersten Byte der Antwort enthalten ist – ohne Web Rendering Service und ohne Verzögerung durch Welle 2. Das ist die Grundlage für die Crawlbarkeit, nicht fertige SEO. Standard-Themes liefern weder Sitemap und robots.txt noch beitragsspezifische Meta-Beschreibung, Canonical oder strukturierte Daten; diese ergänzen Sie über_config.yml, Frontmatter, Theme-Templates und Plugins (hexo-generator-sitemap,hexo-generator-robotstxt,hexo-generator-feed,hexo-abbrlink,hexo-indexnow). Drei Fallen sind besonders relevant: Eine falscheurl:-Angabe beschädigt Canonicals, Sitemap und Feed; der datumsbasierte Standard-Permalink bindet URLs an Dateinamen, sodass Umbenennungen Links brechen; automatisch erzeugte Kategorie- und Tag-Archive schaffen dünne Duplikate. Für auf Baidu ausgerichtete Websites ist die statische Ausgabe ein echter Vorteil.
Hexos statische Ausgabe erleichtert das Crawling
hexo generate verarbeitet Markdown und Theme-Templates in einem Build-Schritt und
schreibt fertige HTML-, CSS- und Asset-Dateien in einen Ordner. Für SEO ist entscheidend,
wann das HTML existiert: einmalig zur Build-Zeit für alle Nutzer, nicht pro Anfrage und
nicht erst im Browser. Evidence for this claim The Hexo generate command builds static files into the configured public directory. Scope: Hexo generate command. Confidence: high · Verified: Hexo: Commands
Google beschreibt für JavaScript-Seiten einen zweistufigen Prozess: In Welle 1 wird das rohe HTML abgerufen und statischer Inhalt sofort indexiert; Welle 2 ist eine nachgelagerte Chromium-Warteschlange für das Rendern ohne Benutzeroberfläche, die Sekunden bis Tage benötigen kann. Hexo-Ausgaben überspringen Welle 2 vollständig – jede Seite liegt beim ersten Abruf als rohes HTML vor. Google bezeichnet dynamisches Rendering ausdrücklich als “a workaround and not a long-term solution… use server-side rendering, static rendering, or hydration as a solution,” (Übersetzung) „eine Behelfslösung und keine langfristige Lösung; verwenden Sie serverseitiges Rendering, statisches Rendering oder Hydration.“ Hexo setzt mit statischem Rendering eine dieser drei empfohlenen Varianten um.
Daraus ergeben sich zwei weitere Vorteile:
- Standardmäßig crawlbare Links. Hexo-Templates erzeugen normale
<a href>-Links im statischen HTML und erfüllen damit Googles Anforderung an echte, crawlbare URLs. Eine per JavaScript erzeugte Navigation muss nicht gesondert berücksichtigt werden. - Geringe Crawling-Kosten. Von einem CDN ausgelieferte statische Dateien verursachen praktisch keine serverseitige Verarbeitung pro Anfrage. Googlebot kann daher mit der zulässigen Rate crawlen, ohne den Server zu überlasten. Gary Illyes formulierte es so: “if you are making expensive database calls, that’s going to cost the server a lot” (Übersetzung) „Aufwendige Datenbankabfragen belasten den Server stark.“ Hexo führt solche Abfragen nicht aus.
Der Vorbehalt: Kein renderblockierender Aufwand für Crawler bedeutet nicht, dass es auch für Nutzer keine Blockaden gibt. JavaScript und CSS des Themes beeinflussen weiterhin die Core Web Vitals.
Zuerst _config.yml konfigurieren – url: ist entscheidend
Legen Sie diese globalen Schlüssel vor der ersten Bereitstellung fest:
url: https://yourdomain.com # must match your live domain, with https://
permalink: :title/ # or :year/:month/:day/:title/ (the default)
title: Site Title
description: Global meta description fallback
author: Your Name
language: en
meta_generator: false # removes the <meta name="generator" content="Hexo"> tagurl:ist die folgenreichste Einstellung. Sie definiert die Basis-URL, die Themes und Generatoren für Canonicals, Feeds, Sitemaps und Paginierung verwenden können. Ein falscher Wert kann sich in all diesen Ausgaben fortsetzen. Evidence for this claim Hexo's url configuration supplies the website URL used by themes and generators. Scope: Exact downstream fields depend on the installed theme and plugins. Confidence: high · Verified: Hexo: Configurationpermalink:– das Standardmuster:year/:month/:day/:title/erzeugt datumsbasierte URLs, die mit der Zeit veraltet wirken und den Slug an den Dateinamen binden. Schlankere Varianten sind/:title/oder/:category/:title/.meta_generator: falseentfernt Hexos Generator-Fingerabdruck aus<head>.- Bereitstellung in einem Unterverzeichnis?
url:allein reicht nicht. Setzen Sie auchroot:auf den Unterverzeichnispfad, etwaroot: /blog/.url_forerzeugt root-relative Links, währendfull_url_forden vollständigen Wert vonurl:voranstellt. Ein falschesroot:lässt interne Links, Feeds und Sitemap-Einträge auf die Domainwurzel statt auf den tatsächlichen Pfad zeigen. - Priorität der Konfiguration: Die
_config.ymlder Website legturl/root/permalinkfest. Die Konfiguration eines Themes ergänzt Anzeige- und Template-Einstellungen, überschreibt aber nicht die URL-Struktur der Website. Ein Theme kann eine falscheurl:-Angabe nicht korrigieren. Die Theme-Datei kann etwa_config.<theme>.ymlheißen. - Test im abgesicherten Modus?
hexo server --safebeziehungsweisehexo --safedeaktiviert alle Plugins und Skripte. Der betrachteten Ausgabe fehlen daher Sitemap, robots.txt und die Tags von SEO-Plugins. Prüfen Sie SEO-Ausgaben nicht in dieser Vorschau, sondern führen Sie zuerst ein normaleshexo generateaus.
SEO-Steuerung im Frontmatter und ihre Lücken
Auf diese nativen Hexo-Felder können Sie sich verlassen:
---
title: "Article Title for the <title> tag"
date: 2024-01-15
updated: 2024-06-01
tags: [tag1, tag2]
categories: [Category]
permalink: /custom-url/ # overrides the global pattern for this post
published: true
sitemap: false # exclude this post from sitemap.xml
---Was im nativen Frontmatter nicht enthalten ist und Theme-Unterstützung oder eine Template-Anpassung benötigt:
description(Meta-Beschreibung) – die meisten Themes geben sie ohne Anpassung nicht aus.keywords(beitragsspezifische Keyword-Metadaten) – ohnehin weitgehend nutzlos; Google ignoriert<meta name="keywords">seit 2009. Verwenden Siekeywordszur Organisation, nicht als Ranking-Hebel.canonical(Canonical-URL überschreiben) – abhängig vom Theme.
Halten Sie das Feld updated: bei jeder Überarbeitung aktuell; davon hängt die
Aktualitätsangabe in der Sitemap ab.
Unverzichtbare Plugins
Sitemap – hexo-generator-sitemap (offiziell):
npm install hexo-generator-sitemap --savesitemap:
path:
- sitemap.xml
tags: true
categories: trueDas Plugin liest lastmod aus dem Feld updated jedes Beitrags und greift ersatzweise
auf date zurück. Das ist wichtig, weil Bing warnt, lastmod “should reflect the true last modification time of the page content, not the sitemap file itself.” (Übersetzung) „sollte den tatsächlichen letzten Änderungszeitpunkt des Seiteninhalts und nicht den der Sitemap-Datei wiedergeben.“ Reichen Sie die nach hexo generate erzeugte sitemap.xml in der Google Search Console und den Bing Webmaster Tools ein. Beachten Sie auch Bings Warnung: “Do not submit a static sitemap and forget it. New pages won’t get picked up” (Übersetzung) „Reichen Sie eine statische Sitemap nicht nur einmal ein und lassen Sie das Thema danach nicht ruhen; neue Seiten werden sonst nicht erfasst.“ Für Hexo bedeutet das, nach jedem neuen Beitrag erneut bereitzustellen und einzureichen oder IndexNow zu verwenden.
robots.txt — hexo-generator-robotstxt:
npm install hexo-generator-robotstxt --saverobotstxt:
useragent: "*"
allow:
- /
disallow:
- /private/
sitemap: https://yourdomain.com/sitemap.xmlOhne dieses Plugin erzeugt Hexo keine robots.txt und Crawler erhalten darin keinen
Hinweis auf die Sitemap.
RSS – hexo-generator-feed: relevant für Aggregatoren und die Eignung für Google
News; John Mueller verwendet auf seiner eigenen statischen Website ebenfalls einen RSS-Feed.
IndexNow – hexo-indexnow: Bing empfiehlt, Sitemaps mit IndexNow zu kombinieren,
um einzelne URLs in Echtzeit zu übermitteln. Legen Sie die erzeugte Schlüsseldatei in
source/ ab, damit sie als yourdomain.com/<key>.txt bereitgestellt wird. Das gilt
für Bing, Yandex und weitere Dienste, nicht für Google, das IndexNow nicht für
allgemeine Seiten nutzt.
Stabile Permalinks mit abbrlink
Der Standard-Permalink verursacht zwei SEO-Probleme: Beim Umbenennen der Markdown-Datei
ändert sich die URL, weil der Slug aus dem Dateinamen stammt, und nicht lateinische Titel
wie chinesische Schrift oder Emojis erzeugen unleserliche URLs. hexo-abbrlink trennt
die URL vom Dateinamen, indem es einen stabilen Hash in das Frontmatter schreibt:
npm install hexo-abbrlink --savepermalink: posts/:abbrlink/
abbrlink:
alg: crc32 # crc16 or crc32
rep: hex # dec or hexSie erhalten eine URL wie /posts/3a9c2b1d/, die Umbenennungen, Kategorieänderungen und
Datumsanpassungen übersteht. Die Grundregel bleibt: Ändern Sie eine veröffentlichte
URL niemals ohne 301-Weiterleitung. Eine Umbenennung ohne Weiterleitung vernichtet
Linksignale und bereits aufgebaute Ranking-Signale.
Zwei weitere Permalink-Fallen sollten Sie vor der Wahl eines Musters kennen:
- Verwenden Sie nicht das Token
:id. Laut Hexo bleiben Beitrags-IDs nach dem Zurücksetzen des Datenbank-Caches nicht dauerhaft erhalten. Enthält Ihr Permalink-Muster:id, kann ein Cache-Neuaufbau unbemerkt alle Beitrags-URLs ändern. Nutzen Sie:title,:abbrlinkoder ein anderes stabiles Token. trailing_indexundtrailing_htmlsind getrennte Schalter. Hexos Einstellungpretty_urlssteuert beide unabhängig: Einer entfernt ein abschließendesindex.htmlaus erzeugten Links, der andere fügt einen abschließenden Schrägstrich hinzu. Stimmen diese Werte nicht mit dem URL-Verhalten des Hosters überein – einige leiten/postzu/post/weiter, andere nicht –, können interne Links, Canonicals und Sitemap-Einträge von der tatsächlich ausgelieferten URL abweichen.
SEO-Konfiguration des NexT-Themes
NexT ist das am häufigsten verwendete Hexo-Theme und wird in _config.next.yml konfiguriert:
canonical: true # builds canonical from url: + page path
webmaster_tools:
google: VERIFICATION_STRING
bing: VERIFICATION_STRING
baidu: VERIFICATION_STRING
open_graph:
enable: true
twitter_card: summary_large_imageDie Meta-Beschreibungs-Lücke in NexT: NexT erzeugt aus description: im Frontmatter
nicht automatisch ein beitragsspezifisches <meta name="description">. Passen Sie das
Head-Template so an, dass es von page.description auf die Website-Beschreibung
zurückfällt. Dies ist das häufigste SEO-Versäumnis bei NexT. canonical: true sowie
Open Graph und Twitter Cards werden hingegen nach Aktivierung unterstützt.
Bei anderen Themes erstellen oder bearbeiten Sie meist ein Head-Partial, das og:title,
og:description, og:image, og:url und twitter:card ausgibt. Die Unterstützung
unterscheidet sich je nach Theme erheblich.
Legen Sie die Zuständigkeit für jedes Tag fest. Die integrierte Open-Graph- und
Canonical-Unterstützung eines Themes und ein Komplett-Plugin wie hexo-seo können
dieselben Tags ausgeben. Sind beide aktiv, entstehen doppelte oder widersprüchliche
<meta>-Tags, Canonicals oder JSON-LD-Blöcke in demselben <head>. Bestimmen Sie pro
Tag-Kategorie genau eine zuständige Ebene – Theme oder Plugin – und deaktivieren Sie
die entsprechende Funktion der anderen Ebene.
Kategorie- und Tag-Seiten: die Duplicate-Content-Falle
Hexo erzeugt für jede Kategorie und jedes Tag automatisch eine Archivseite mit Beitragsauszügen, die auch in den Beiträgen selbst erscheinen. Im großen Maßstab entstehen so Hunderte dünne Seiten, die um dieselben Suchanfragen konkurrieren und Crawling-Aufmerksamkeit verteilen. Ihre Optionen:
sitemap: falsepro Archiv, was im großen Maßstab unpraktisch ist.noindexauf Theme-Ebene in den Kategorie- und Tag-Archiv-Templates.- Nur dann indexieren, wenn eine Kategorie ein echter, kuratierter Themen-Hub mit eigenem Wert ist.
- Ein selbstreferenzielles Canonical auf jeder paginierten Archivseite; Seite 2 verweist auf sich selbst und nicht auf Seite 1.
Ein Vorbehalt zu Option 2: Dauerhaftes noindex kann dazu führen, dass Google den Links
auf der Seite nicht mehr folgt. Beiträge, die nur über solche Tags verlinkt sind, werden
dann womöglich seltener gecrawlt. Stellen Sie sicher, dass sie auch anderweitig erreichbar sind.
Ihr Routeninventar ist größer als source/. Kategorie-, Tag-, Archiv- und
Paginierungsseiten stammen nicht aus Markdown-Dateien, sondern werden von Hexos
Generator-API erzeugt. Themes und Plugins können eigene Generatoren registrieren.
Dadurch kann die crawlbare URL-Oberfläche unbemerkt über den Inhalt von source/
hinauswachsen. Führen Sie nach der Installation oder Aktualisierung eines Themes oder
Plugins hexo generate aus und vergleichen Sie die Routenliste in public/.
Strukturierte Daten und JSON-LD
Hexo fügt standardmäßig keine strukturierten Daten ein. Ergänzen Sie entweder einen
BlogPosting-JSON-LD-Block im Beitrags-Template des Themes mit headline,
datePublished, dateModified, author, publisher und url, oder verwenden Sie
ein Komplett-Plugin wie hexo-seo, das Breadcrumb-, Website- und Artikel-Schema erzeugt.
Core Web Vitals
Statische Ausgaben sind schnell, doch Themes können diesen Vorteil zunichtemachen.
NexT und viele andere Themes bündeln große JavaScript-, CSS- und Icon-Font-Bibliotheken;
Font Awesome verursacht häufig LCP- und Renderblockierungsprobleme. Prüfen Sie mit
Lighthouse und verwenden Sie anschließend hexo-all-minifier zur Komprimierung beim
Build, hexo-lazyload-image sowie defer oder async für Drittanbieter-Skripte.
Baidu für Websites mit chinesischem Publikum
Baidus Crawler verarbeitet JavaScript nur eingeschränkt; Hexos statisches HTML beseitigt
daher ein Hindernis für die Auffindbarkeit. Fügen Sie in NexT baidu_site_verification
hinzu, erzeugen Sie mit hexo-generator-baidu-sitemap eine Sitemap im Baidu-Format und
übermitteln Sie URLs aktiv mit hexo-submit-urls-to-search-engine. GitHub Pages ist
in Festlandchina blockiert; verwenden Sie für Baidu-Traffic Gitee Pages, Cloudflare
oder ein chinesisches CDN.
Betrachten Sie dies als Crawlbarkeitsvorteil, nicht als Garantie. Statisches HTML belegt nicht, dass Baidu Ihre Seiten findet, indexiert oder rankt. Prüfen Sie Crawling-Aktivität und Indexierungsstatus direkt in Baidu Ziyuan, statt Sichtbarkeit aus der statischen Ausgabe abzuleiten.
Bereitstellung auf GitHub Pages: SEO-Fallen
- Setzen Sie
url:vor der ersten Bereitstellung auf die Live-Adresse mithttps://. - Legen Sie für eigene Domains eine
CNAME-Datei insource/ab, damit sie beihexo deploynicht zurückgesetzt wird. - Erzwingen Sie nach der DNS-Aktualisierung HTTPS unter Repository Settings → Pages.
- Bevorzugen Sie einen GitHub-Actions-Workflow gegenüber
hexo-deployer-git, um CNAME-Probleme zu vermeiden.
Hexo, Hugo, Jekyll und Astro im SEO-Vergleich
Alle vier liefern reines statisches HTML; die Grundlage für die Indexierbarkeit ist identisch. Hexo hat auf Framework-Ebene keinen SEO-Nachteil. Die Unterschiede sind operativ: Hugo baut große Websites deutlich schneller und enthält eine Sitemap; Jekyll ist der Standard für GitHub Pages; Astro liefert dank Islands standardmäßig kein JavaScript aus. Hexos Vorteil ist das umfangreiche npm-Plugin-Ökosystem und die große chinesischsprachige Community. Die Inhaltsqualität entscheidet, nicht der Generator. Mueller sagte zum Wechsel des Generators: “Will your site’s SEO suddenly explode? No. Also No.” (Übersetzung) „Wird die SEO Ihrer Website plötzlich explodieren? Nein. Ebenfalls nein.“
Eine Übersicht und weitere Generatoren finden Sie unter statische Website-Generatoren; den größeren Rendering-Kontext behandelt JavaScript SEO.
KI-Zusammenfassung
Die wichtigsten Punkte der fortgeschrittenen Fassung:
- Hexo ist ein statischer Website-Generator auf Basis von Node.js.
hexo generateerzeugt reines statisches HTML. Inhalte stehen schon im ersten Byte der Antwort bereit, ohne Web Rendering Service oder Verzögerung durch Welle 2. Crawlbare<a href>-Links und kostengünstig crawlbare CDN-Dateien sind inklusive. - Statisches HTML ist die Crawling-Grundlage, nicht fertige SEO. Standard-Themes liefern weder Sitemap und robots.txt noch beitragsspezifische Meta-Beschreibung, Canonical oder strukturierte Daten.
- Konfigurieren Sie zuerst
_config.yml.url:speist Canonicals, Sitemap, RSS und Paginierung; ein falscher Wert beschädigt alle. Unterverzeichnisse brauchen auchroot:. Wählen Sie einen stabilenpermalink:, vermeiden Sie das nicht dauerhafte Token:id, und setzen Siemeta_generator: false. Der abgesicherte Modus--safedeaktiviert Plugins und Skripte und eignet sich daher nicht zur SEO-Prüfung. Auf Website-Ebene bleiben die Tokensurl,rootundpermalinkmaßgeblich. - Plugins erledigen die Zusatzarbeit:
hexo-generator-sitemap,hexo-generator-robotstxt,hexo-generator-feed,hexo-indexnowfür Bing und Yandex sowiehexo-abbrlinkfür stabile Permalinks.lastmodstammt aus dem Feldupdated. - NexT-Theme: Es unterstützt Canonicals und Open Graph, gibt aber nicht automatisch eine beitragsspezifische Meta-Beschreibung aus. Legen Theme und SEO-Plugin dieselben Tags an, darf pro Kategorie nur eine Quelle aktiv sein.
- Drei Fallen: eine falsche
url:-Angabe, datumsbasierte Permalinks, die bei Umbenennungen brechen und eine 301-Weiterleitung erfordern, sowie automatisch erzeugte dünne Kategorie- oder Tag-Archive. Diese Routen stammen aus Hexos Generator-API und nicht nur aussource/; vergleichen Siepublic/nach Updates. - Baidu: Statische Ausgabe beseitigt ein Crawling-Hindernis, garantiert aber weder Indexierung noch Rankings. Prüfen Sie Baidu Ziyuan. GitHub Pages ist in China blockiert.
- Hugo, Jekyll und Astro: Die Grundlage für die Indexierbarkeit ist identisch. Hexos Vorteil sind npm-Plugins und die chinesischsprachige Community; Rankings hängen von der Inhaltsqualität ab, nicht vom Generator.
Offizielle Dokumentation
Primärdokumentation von Hexo, Suchmaschinen und zentralen Plugins.
Hexo
- Hexo-Dokumentation – Übersicht über das Framework.
- Konfiguration –
url,permalink,meta_generatorund weitere Einstellungen in_config.yml. - Permalinks – Variablen und Abwägungen für URL-Muster.
- Frontmatter – von Hexo nativ unterstützte Beitragsfelder.
- GitHub-Pages-Bereitstellung – offizielle Anleitung.
Plugins
- hexo-generator-sitemap – offizielles Sitemap-Plugin.
- hexo-abbrlink – stabile hashbasierte Permalinks.
- SEO-Einstellungen des NexT-Themes – Canonical, Webmaster-Verifizierung und Open Graph.
Suchmaschinen – Rendering, Links und Sitemaps
- JavaScript-SEO-Grundlagen – Crawling, Rendering und Indexierung, die ein statischer Build für Inhalte vereinfacht.
- Dynamisches Rendering (veraltet) – Google empfiehlt stattdessen statisches Rendering.
- Links crawlbar gestalten – die von Hexo standardmäßig erfüllte
<a href>-Anforderung. - SEO-Leitfaden für Webentwickler – Titel, Beschreibungen, Canonicals, Sitemaps und strukturierte Daten.
- Bing – Inhalte mit Sitemaps auffindbar halten – XML-Präferenz, korrekte
lastmod-Werte und IndexNow.
Zitate aus den Quellen
Öffentliche Aussagen von Google, Bing und John Mueller mit direktem Bezug zu einer statischen Hexo-Website.
Google – statisches Rendering ist der empfohlene Weg
- “Dynamic rendering was a workaround and not a long-term solution for problems with JavaScript-generated content in search engines… Instead, we recommend that you use server-side rendering, static rendering, or hydration as a solution.” (Übersetzung) „Dynamisches Rendering war eine Behelfslösung und keine langfristige Antwort auf Probleme mit JavaScript-generierten Inhalten; empfohlen werden serverseitiges Rendering, statisches Rendering oder Hydration.“ – Hexo erzeugt statisches Rendering. Quelle
- “Server-side or pre-rendering is still a great idea because it makes your website faster for users and crawlers, and not all bots can run JavaScript.” (Übersetzung) „Serverseitiges Rendering oder Vorab-Rendering ist weiterhin sinnvoll, weil es Websites für Nutzer und Crawler beschleunigt und nicht alle Bots JavaScript ausführen können.“ Quelle
Bing – Sitemaps und Aktualität
- “XML remains the preferred format for sitemaps” (Übersetzung) „XML bleibt das bevorzugte Sitemap-Format.“ – es unterstützt strukturierte Metadaten wie
lastmod. Quelle - Zu
lastmod: Es “should reflect the true last modification time of the page content, not the sitemap file itself.” (Übersetzung) „sollte den tatsächlichen letzten Änderungszeitpunkt des Seiteninhalts und nicht den der Sitemap-Datei wiedergeben.“ Deshalb mussupdatedaktuell bleiben. Quelle - “By combining sitemaps for comprehensive site coverage with IndexNow for fast, URL-level submission, you provide the strongest foundation for keeping your content fresh, discoverable, and visible.” (Übersetzung) „Die Kombination aus Sitemaps für eine umfassende Abdeckung und IndexNow für eine schnelle URL-Übermittlung schafft die beste Grundlage, um Inhalte aktuell, auffindbar und sichtbar zu halten.“ Quelle
Gary Illyes, Google – statische Websites sind kostengünstig zu crawlen
- “If you are making expensive database calls, that’s going to cost the server a lot.” (Übersetzung) „Aufwendige Datenbankabfragen belasten den Server stark.“ – statisches HTML aus einem CDN benötigt keine solchen Abfragen. Bericht
John Mueller – der Generatorwechsel ist kein SEO-Gewinn an sich
- “Will this change how your site appears in all search engines? Will your site’s SEO suddenly explode? No. Also No.” (Übersetzung) „Wird dies die Darstellung Ihrer Website in allen Suchmaschinen verändern? Wird ihre SEO plötzlich explodieren? Nein. Ebenfalls nein.“ – die Inhaltsqualität entscheidet, nicht der Generator. Quelle
Hexo-SEO-Checkliste
Prüfen Sie damit, ob eine Hexo-Website suchmaschinenfreundlich ist; die meisten Punkte sind standardmäßig nicht aktiv:
-
url:in_config.ymlenthält die Live-Domain mithttps://, keinen Platzhalter und keinhttp://. Bei Unterverzeichnissen ist auchroot:gesetzt. - Ein dauerhaftes Permalink-Muster ist gewählt, idealerweise
:title/oderhexo-abbrlink; das nicht persistente Token:idwird nicht verwendet. - Wenn Theme und SEO-Plugin Canonical-, OG- oder JSON-LD-Tags erzeugen können, ist pro Tag-Kategorie genau eines davon aktiviert.
-
meta_generator: falseentfernt optional den Hexo-Fingerabdruck. -
hexo-generator-sitemapist installiert;sitemap.xmlwird erzeugt und bei Google Search Console und Bing Webmaster Tools eingereicht. -
updated:bleibt aktuell, damitlastmodin der Sitemap stimmt. -
hexo-generator-robotstxtoder eine manuellerobots.txtinsource/verweist auf die Sitemap. - Jeder Beitrag hat
description:und das Theme gibt<meta name="description">aus. - Canonical-Tags werden erzeugt und verweisen auf Live-HTTPS-URLs (NexT:
canonical: true). - Open-Graph- und Twitter-Card-Tags sind vorhanden.
-
BlogPosting-JSON-LD wurde per Template oderhexo-seoergänzt. - Kategorie- und Tag-Archive sind auf noindex gesetzt, canonicalisiert oder echte Themen-Hubs.
- Paginierte Archivseiten verweisen per Canonical auf sich selbst.
- JavaScript und CSS des Themes wurden mit Lighthouse geprüft; Minifier und Lazy Loading wurden erwogen.
- GitHub Pages:
CNAMEliegt insource/, HTTPS ist erzwungen und Actions verhindert CNAME-Verluste. - Baidu-Websites liegen nicht auf GitHub Pages; Verifizierung, Sitemap und URL-Übermittlung sind konfiguriert.
- Keine URL wird ohne vorhandene 301-Weiterleitung geändert.
Hexo-SEO-Spickzettel
Standardmäßig aktiv oder zu ergänzen
| SEO-Funktion | Hexo-Standard | Umsetzung |
|---|---|---|
| Statisches HTML / crawlbarer Inhalt | Ja | hexo generate |
Crawlbare <a href>-Links | Ja | Theme-Templates |
| XML-Sitemap | Nein | hexo-generator-sitemap |
| robots.txt | Nein | hexo-generator-robotstxt oder manuelle Datei |
| RSS-Feed | Nein | hexo-generator-feed |
| Beitragsbezogene Meta-Beschreibung | Nein, Theme-abhängig | description: plus Theme-Anpassung |
| Canonical-Tag | Nein, Theme-abhängig | NexT canonical: true |
| Open Graph / Twitter Card | Nein, Theme-abhängig | NexT oder Head-Partial |
| Strukturierte Daten (JSON-LD) | Nein | Template oder hexo-seo |
| Stabile Permalinks | Nein, datums-/dateibasiert | hexo-abbrlink |
| IndexNow-Übermittlung | Nein | hexo-indexnow für Bing/Yandex, nicht Google |
Wichtige Einstellungen in _config.yml
| Einstellung | Bedeutung |
|---|---|
url: | Basis für Canonical, Sitemap, RSS und Paginierung; ein falscher Wert beschädigt alle |
root: | Unterverzeichnispfad; neben url: erforderlich, damit root-relative Links stimmen |
permalink: | Standard ist datumsbasiert; :title/ ist schlanker; nach Veröffentlichung nicht ändern und :id vermeiden |
meta_generator: false | Entfernt das Tag <meta name="generator" content="Hexo"> |
Installationsbefehle für Plugins
npm install hexo-generator-sitemap --save
npm install hexo-generator-robotstxt --save
npm install hexo-generator-feed --save
npm install hexo-abbrlink --save
npm install hexo-indexnow --saveKurzfakten
- Hexo überspringt Googles Rendering-Warteschlange Welle 2; Inhalte stehen beim ersten Abruf bereit.
lastmodstammt ausupdatedund ersatzweise ausdate; halten Sie es aktuell.- Google ignoriert
<meta name="keywords">seit 2009; es dient nur der Organisation. - Kategorie- und Tag-Archive sind automatisch erzeugt und dünn: noindex oder Canonical verwenden.
- Baidu verarbeitet JavaScript schlecht; statisches Hexo hilft, GitHub Pages ist in China jedoch blockiert.
Eine Hexo-Website bauen, bereitstellen und prüfen
Der grundlegende Hexo-Build-Ablauf ist überall gleich; nur die Shell unterscheidet sich.
macOS / Linux
# install dependencies and the SEO plugins
npm install
npm install hexo-generator-sitemap hexo-generator-robotstxt hexo-generator-feed --save
# clean stale output, then build the static HTML
npx hexo clean && npx hexo generate
# preview locally before deploying
npx hexo server
# confirm the sitemap and robots.txt were actually generated
ls public/sitemap.xml public/robots.txtWindows (PowerShell)
# install dependencies and the SEO plugins
npm install
npm install hexo-generator-sitemap hexo-generator-robotstxt hexo-generator-feed --save
# clean stale output, then build the static HTML
npx hexo clean; npx hexo generate
# preview locally before deploying
npx hexo server
# confirm the sitemap and robots.txt were actually generated
Get-ChildItem public\sitemap.xml, public\robots.txtPrüfen, ob Inhalte im rohen HTML stehen
Hexos wesentlicher Vorteil besteht darin, dass Inhalte bereits im HTML stehen. Prüfen Sie, ob der Beitragstext vor der Ausführung von JavaScript in der rohen Antwort erscheint.
macOS / Linux
# fetch the raw HTML and search for a phrase from your post body
curl -s https://yourdomain.com/your-post/ | grep -i "a sentence from your post"
# confirm the canonical tag points at the live HTTPS URL
curl -s https://yourdomain.com/your-post/ | grep -i 'rel="canonical"'Windows (PowerShell)
# fetch the raw HTML and search for a phrase from your post body
(Invoke-WebRequest https://yourdomain.com/your-post/).Content | Select-String "a sentence from your post"
# confirm the canonical tag points at the live HTTPS URL
(Invoke-WebRequest https://yourdomain.com/your-post/).Content | Select-String 'rel="canonical"'Erscheint die Wortfolge in der Ausgabe von curl oder Invoke-WebRequest, steht sie im
statischen HTML und Google sieht sie bereits in Welle 1.
Werkzeuge für Hexo-SEO
Hexo-Plugins als SEO-Werkzeugkasten
- hexo-generator-sitemap – offizieller XML-Sitemap-Generator; liest
lastmodausupdated. - hexo-generator-robotstxt – erzeugt
robots.txtmit Sitemap-Verweis. - hexo-generator-feed – RSS-/Atom-Feed für Aggregatoren und Google News.
- hexo-abbrlink – stabile hashbasierte Permalinks, die Umbenennungen überstehen.
- hexo-indexnow / hexo-submit-urls-to-search-engine – übermitteln geänderte URLs an Bing beziehungsweise Baidu.
- hexo-all-minifier / hexo-lazyload-image – Hilfen für Core Web Vitals.
- hexo-seo – Komplettlösung mit Erzeugung strukturierter Daten.
Tests und Monitoring
- Google Search Console – Sitemap einreichen, URLs prüfen und Indexierung beobachten.
- Bing Webmaster Tools – Sitemap einreichen, IndexNow konfigurieren und Site Scan ausführen.
- Baidu Webmaster (Ziyuan) – Verifizierung und URL-Übermittlung für chinesisches Publikum.
- Lighthouse / PageSpeed Insights – JavaScript und CSS des Themes auf Core-Web-Vitals-Regressionen prüfen.
- Quelltextansicht / curl – Inhalt, Canonical und Meta-Beschreibung im rohen HTML bestätigen.
Zu vermeidende Hexo-SEO-Fehler
Konkrete Fehler bei Einrichtung oder Migration einer Hexo-Website – hier geht es um Vorbeugung; zur Diagnose dient der Tab zur Fehlerbehebung.
url: als Platzhalter oder mit http:// belassen
Bleibt url: http://yoursite.com auf dem Gerüstwert oder dem falschen Protokoll, werden
Canonical-Tags, Sitemap, RSS-Links und Paginierung aus dieser falschen Basis erzeugt.
Setzen Sie url: vor dem ersten hexo generate auf die echte Live-Domain mit
https:// und prüfen Sie den Wert bei jedem Domainwechsel erneut.
Beitragsdatei oder Slug ohne Weiterleitung umbenennen
Der Standard-Permalink leitet die URL aus Dateiname und Datum ab. Eine Umbenennung oder
Datumsänderung verändert daher die Live-URL; eingehende Links und aufgebaute Signale
enden anschließend auf einer 404-Seite. Wechseln Sie frühzeitig zu hexo-abbrlink und
richten Sie für jede unvermeidbare URL-Änderung beim Hoster oder CDN eine 301-Weiterleitung ein.
Ohne hexo-generator-sitemap und hexo-generator-robotstxt veröffentlichen
Eine Standardinstallation von Hexo erzeugt weder Sitemap noch robots.txt; Crawler
finden daher auch keinen Sitemap-Verweis. Installieren Sie beide Plugins, bestätigen
Sie nach hexo generate die Dateien public/sitemap.xml und public/robots.txt und
reichen Sie die Sitemap in der Search Console und den Bing Webmaster Tools ein.
Kategorie- und Tag-Archive massenhaft indexieren lassen
Automatisch erzeugte Kategorie- und Tag-Seiten enthalten Beitragsauszüge und wachsen mit der Zahl der Beiträge zu Hunderten dünnen Duplikaten an. Setzen Sie Archiv-Templates auf noindex, verwenden Sie selbstreferenzielle Canonicals für paginierte Archive oder indexieren Sie nur echte, kuratierte Themen-Hubs.
Annehmen, hexo-indexnow decke auch Google ab
IndexNow ist ein Protokoll für Bing, Yandex und Baidu; Google verwendet es nicht für allgemeine Seiten. Nutzen Sie IndexNow für deren Aktualität und verlassen Sie sich bei Google auf eine eingereichte Sitemap und normales Crawling.
Ohne dauerhafte CNAME-Datei auf GitHub Pages bereitstellen
Einige Bereitstellungswege setzen die CNAME-Datei zurück oder lassen sie aus; die
eigene Domain fällt dann unbemerkt auf github.io zurück und die HTTPS-Erzwingung
bricht. Bewahren Sie CNAME in source/ auf und bevorzugen Sie statt hexo-deployer-git
einen GitHub-Actions-Workflow, der den gebauten Ordner public/ unverändert veröffentlicht.
Häufige Hexo-SEO-Probleme
Eine symptombasierte Hilfe für bestehende Probleme auf einer Hexo-Website.
Sitemap.xml liefert nach der Bereitstellung eine 404
Symptom: https://yoursite.com/sitemap.xml liefert 404 oder die Search Console
kann die Sitemap nicht abrufen.
Wahrscheinliche Ursache: hexo-generator-sitemap fehlt, ist nicht in _config.yml
eingetragen oder die Build-Ausgabe unter public/ wurde nur teilweise bereitgestellt.
Behebung und Prüfung: Führen Sie npm install hexo-generator-sitemap --save aus,
ergänzen Sie einen sitemap:-Block in _config.yml, führen Sie hexo clean && hexo generate
aus und prüfen Sie vor der Bereitstellung public/sitemap.xml. Rufen Sie danach die
Live-URL mit curl -I https://yoursite.com/sitemap.xml ab und bestätigen Sie Status 200.
Search Console meldet „Gefunden – zurzeit nicht indexiert“
Symptom: Beiträge sind crawlbar und laden im Browser, bleiben im Indexierungsbericht aber wochenlang als gefunden und nicht indexiert markiert.
Wahrscheinliche Ursache: Dünne Kategorie- oder Tag-Archive beanspruchen zu viel Crawling-Aufmerksamkeit oder die Beiträge duplizieren weitgehend deren Auszüge.
Behebung und Prüfung: Setzen Sie automatisch erzeugte Archive auf noindex oder Canonical, beantragen Sie die Indexierung einiger betroffener URLs und prüfen Sie den Bericht nach einigen Tagen bis Wochen erneut; das Signal reagiert nicht sofort.
Meta-Beschreibung erscheint nicht im Suchergebnis
Symptom: Der Beitrag enthält description: im Frontmatter, Google zeigt aber einen
automatisch erzeugten Ausschnitt oder unter view-source: fehlt <meta name="description">.
Wahrscheinliche Ursache: Das Head-Template des Themes gibt page.description nicht aus.
Behebung und Prüfung: Passen Sie das Head-Partial des Themes so an, dass es
<meta name="description" content="{{ page.description or config.description }}">
ausgibt, bauen Sie neu und bestätigen Sie mit curl -s https://yoursite.com/your-post/ | grep -i 'name="description"', dass das Tag im rohen HTML vorhanden ist.
Canonical-Tag fehlt oder verweist auf die falsche URL
Symptom: curl zeigt kein rel="canonical", das Tag verwendet http:// statt
https:// oder verweist auf eine alte Domain.
Wahrscheinliche Ursache: Die Canonical-Funktion des Themes ist nicht aktiviert oder
url: in _config.yml ist falsch. NexT benötigt canonical: true in _config.next.yml.
Behebung und Prüfung: Korrigieren Sie zuerst url:, aktivieren Sie die Canonical-
Option, bauen Sie neu und prüfen Sie mit curl; der Wert muss exakt der Live-HTTPS-URL entsprechen.
Eigene Domain fällt nach der Bereitstellung auf username.github.io zurück
Symptom: Eine funktionierende eigene Domain auf GitHub Pages wird nach hexo deploy
nicht mehr aufgelöst und fällt auf die Standardadresse github.io zurück.
Wahrscheinliche Ursache: Die Bereitstellung hat die von GitHub Pages verwendete
CNAME-Datei überschrieben oder ausgelassen.
Behebung und Prüfung: Legen Sie eine CNAME-Datei mit Ihrer Domain in source/ ab,
stellen Sie erneut bereit und bestätigen Sie unter Settings → Pages die Domain und HTTPS.
Baidu indexiert die Website überhaupt nicht
Symptom: Baidu Ziyuan zeigt kaum oder keine Crawling-Aktivität, obwohl Google die Website indexiert.
Wahrscheinliche Ursache: Die Website liegt auf GitHub Pages, das in Festlandchina blockiert ist und von Baidus Crawler nicht zuverlässig erreicht wird.
Behebung und Prüfung: Verlagern Sie das Baidu-Hosting zu Gitee Pages, Cloudflare
oder einem chinesischen CDN, fügen Sie Baidu-Verifizierung und eine Baidu-Sitemap mit
hexo-generator-baidu-sitemap hinzu und beobachten Sie danach den Crawling-Bericht.
Testen Sie Ihr Wissen: Hexo-SEO
Fünf kurze Fragen zur Suchmaschinenoptimierung mit Hexo. Wählen Sie jeweils eine Antwort und prüfen Sie das Ergebnis.
Ressourcen, die Ihre Zeit wert sind
Meine verwandten Artikel
- JavaScript SEO: A Definitive Guide – Rendering, DOM-Parität und warum statische oder vorgerenderte Ausgaben das risikoarme Ende des Spektrums bilden.
- The Beginner’s Guide to Technical SEO – Einordnung der Rendering-Architektur in den größeren Zusammenhang.
Meine Vorträge
- So funktioniert die Suche (SlideShare) – mein Durchgang durch Crawling, Rendering, Indexierung und Ranking. Mein üblicher Hinweis gilt: “This is my understanding of systems… not going to be 100% complete or accurate.” (Übersetzung) „Das ist mein Verständnis der Systeme; es wird nicht zu 100 % vollständig oder korrekt sein.“
Aus der Branche
- Hexo-Dokumentation – offizielle Dokumentation zu Konfiguration, Permalinks, Frontmatter und Bereitstellung.
- hexo-generator-sitemap – README des offiziellen Sitemap-Plugins.
- SEO-Einstellungen des NexT-Themes – Canonical, Webmaster-Verifizierung und Open Graph für das verbreitete Theme.
- Google – Grundlagen des JavaScript-SEO – Crawling, Rendering und Indexierung bei statischen Builds.
- Bing – Inhalte mit Sitemaps auffindbar halten – XML-Präferenz, korrekte
lastmod-Werte und IndexNow. - John Mueller – Einige Designentscheidungen – seine statische Website und warum ein Generatorwechsel allein keinen SEO-Gewinn bringt.
Änderungsprotokoll
Aktualisiert am 22. Aug. 2026.
Redaktionelle Zusammenfassung und aufgezeichnete Änderungsdetails.Änderungsdetails
-
Detaillierte Änderungsangaben sind derzeit auf Englisch verfügbar.
Vollständiger Vergleich nicht verfügbar — für diese Version wurde kein früherer Schnappschuss archiviert.
Aktualisiert am 13. Aug. 2026.
Redaktionelle Zusammenfassung und aufgezeichnete Änderungsdetails.Änderungsdetails
-
Detaillierte Änderungsangaben sind derzeit auf Englisch verfügbar.
-
Detaillierte Änderungsangaben sind derzeit auf Englisch verfügbar.
Vollständiger Vergleich nicht verfügbar — für diese Version wurde kein früherer Schnappschuss archiviert.
Aktualisiert am 13. Aug. 2026.
Redaktionelle Zusammenfassung und aufgezeichnete Änderungsdetails.Änderungsdetails
-
Detaillierte Änderungsangaben sind derzeit auf Englisch verfügbar.
-
Detaillierte Änderungsangaben sind derzeit auf Englisch verfügbar.
Vollständiger Vergleich nicht verfügbar — für diese Version wurde kein früherer Schnappschuss archiviert.
Aktualisiert am 18. Juli 2026.
Redaktionelle Zusammenfassung und aufgezeichnete Änderungsdetails.Änderungsdetails
-
Detaillierte Änderungsangaben sind derzeit auf Englisch verfügbar.
-
Detaillierte Änderungsangaben sind derzeit auf Englisch verfügbar.
-
Detaillierte Änderungsangaben sind derzeit auf Englisch verfügbar.
-
Detaillierte Änderungsangaben sind derzeit auf Englisch verfügbar.
-
Detaillierte Änderungsangaben sind derzeit auf Englisch verfügbar.
Vollständiger Vergleich nicht verfügbar — für diese Version wurde kein früherer Schnappschuss archiviert.