Back to ArticlesLieber nicht selbst machen? Wir melden Ihre Website zum Festpreis bei Baidu an.Zur Baidu-Anmeldung

Baidu-Verifizierung der Website: HTML-Datei, Meta-Tag und CNAME

Beijing central business district skyline at dusk

Sie haben eine Baidu-Aufgabe auf den Tisch bekommen, und das Erste, was Ihnen im Weg steht, ist ein Verifizierungsbildschirm. Baidu nimmt keine Sitemap an, öffnet keine Indexierungsberichte und lässt Sie keine einzige URL einreichen, solange nicht feststeht, dass die Domain Ihnen gehört. Es gibt drei Wege, das nachzuweisen, sie verhalten sich unterschiedlich, und die Fehlerbilder sind andere als die, die Sie aus der Google Search Console kennen.

Hier stehen die Implementierungsdetails zu jeder Methode, dazu die Gründe, an denen die Verifizierung üblicherweise scheitert, und wie Sie jeden davon im Terminal prüfen.

Wo die Verifizierung stattfindet

Baidus Webmaster-Produkt heißt Baidu Search Resource Platform (百度搜索资源平台) und liegt unter ziyuan.baidu.com; im Sprachgebrauch ist es weiterhin Baidu Zhanzhang. Sie legen eine Website an, wählen eine Verifizierungsmethode, und Baidu ruft etwas von Ihrer Domain ab, um die Kontrolle zu bestätigen. Erst danach werden Linkeinreichung, Sitemap-Upload und die Crawling-Diagnose freigeschaltet.

Zwei Eigenheiten des Property-Modells sorgen für Ärger, noch bevor überhaupt eine Methode gewählt ist:

  • Protokoll und Host gehören zur Identität. https://example.com und https://www.example.com sind für Baidu zwei verschiedene Websites, und die http://-Varianten ebenso. Legen Sie genau die Origin an, die Ihre kanonischen URLs verwenden. Verifizieren Sie die falsche, bezieht sich alles, was Sie danach einreichen, auf eine Property, über die kein Besucher kommt.
  • Der Abruf erfolgt aus dem chinesischen Festland. Was auch immer die Inhaberschaft belegt, muss von dort aus über das öffentliche Internet erreichbar sein, ohne vorgeschaltete Challenge-Seite. Diese eine Tatsache erklärt die meisten Fehlerursachen am Ende dieses Artikels.

Vor all dem steht ein Konto. Ohne Baidu-Konto erreichen Sie den Verifizierungsbildschirm überhaupt nicht, und die Registrierung ist an eine SMS-Bestätigung auf einer Mobilfunknummer vom chinesischen Festland gebunden. Für ein Unternehmen in Europa oder Großbritannien ist das eine echte Hürde, und man sollte davon wissen, bevor man einen Nachmittag in DNS investiert. Dazu mehr am Schluss.

Methode 1: die HTML-Verifizierungsdatei

Die gängigste Methode, und die erste Wahl, wenn Sie eine statische Datei ausliefern können.

Baidu erzeugt eine Datei für Ihre Website und bietet sie zum Download an. Der Name sieht so aus:

baidu_verify_codeva-XXXXXXXXXX.html

Ältere Properties haben Namen der Form baidu_verify_XXXXXXXXXX.html erhalten, und manche Oberflächen zeigen das Präfix code- statt codeva-. Versuchen Sie nicht, Name oder Token aus einem Blogbeitrag zu rekonstruieren: Laden Sie die Datei herunter, die Baidu Ihnen gibt, oder kopieren Sie die Zeichenkette Zeichen für Zeichen aus dem Panel. Der Inhalt der Datei ist kurz, meist nur das Token und sonst nichts.

Sie muss aus dem Stammverzeichnis der registrierten Origin ausgeliefert werden:

https://example.com/baidu_verify_codeva-XXXXXXXXXX.html

Nicht in einem Unterverzeichnis, nicht hinter einem Sprachpräfix, nicht auf einem anderen Host.

Wohin die Datei gehört, nach Stack

| Stack | Ablageort | | --- | --- | | Vite, Create React App, SvelteKit (static), Nuxt | public/ oder static/ im Projektstamm | | Next.js (beide Router) | public/ | | Hugo, Astro | static/ beziehungsweise public/ | | Laravel | public/ | | Django | ein static/-Verzeichnis, das collectstatic einsammelt, oder direkt von nginx ausgeliefert | | ASP.NET Core | wwwroot/ | | WordPress | das Web-Stammverzeichnis neben wp-config.php, per SFTP | | Reines nginx oder Apache | das Document Root |

Prüfen Sie es so, wie Baidu es prüft

curl -sSI https://example.com/baidu_verify_codeva-XXXXXXXXXX.html
curl -sS  https://example.com/baidu_verify_codeva-XXXXXXXXXX.html

Sie wollen HTTP/2 200 sehen, einen content-type von text/html, keinen location-Header und einen Body, der exakt das Token enthält. Drei Ergebnisse bedeuten, dass Sie noch nicht fertig sind:

  • Ein 301 oder 302. Irgendetwas normalisiert den Pfad, meist eine Regel für abschließende Schrägstriche oder eine Sprachweiterleitung, die jeden nicht zugeordneten Pfad nach /en/... schickt. Legen Sie eine Ausnahme vor der Catch-all-Regel an.
  • Ein 200, das die App-Shell zurückgibt. Das ist der mit Abstand häufigste falsche Erfolg. Eine Single-Page-App mit Catch-all-Route beantwortet jeden Pfad mit index.html und Status 200, die Datei „existiert" also, aber der Body ist Ihr React-Markup. Baidu liest den Body, findet kein Token und lehnt ab. Liefern Sie die statische Datei vor dem SPA-Fallback aus.
  • Ein 404, das nach dem Deployment bestehen bleibt. Meist hat ein CDN die negative Antwort zwischengespeichert. Leeren Sie den Cache für genau diesen Pfad und prüfen Sie erneut mit curl -H 'Cache-Control: no-cache'.

Lassen Sie die Datei anschließend im Repository. Baidu prüft die Inhaberschaft in Abständen erneut, und eine Website, die ihre Verifizierungsdatei verliert, verschwindet stillschweigend aus dem Panel.

Methode 2: der HTML-Meta-Tag

Nehmen Sie diesen Weg, wenn Sie Templates bearbeiten, aber keine Dateien ins Web-Stammverzeichnis legen können, also in der üblichen Lage bei einem gehosteten CMS oder einer Plattform.

Baidu gibt Ihnen einen Tag dieser Form, der in den <head> der Startseite gehört:

<meta name="baidu-site-verification" content="codeva-XXXXXXXXXX" />

Das name-Attribut lautet immer baidu-site-verification, genau so geschrieben, Bindestriche inklusive. Der content-Wert ist das Token aus dem Panel.

Ob es funktioniert, entscheiden drei Regeln:

  1. Er muss innerhalb von <head> stehen. Ein Parser, der ihn im <body> findet, behandelt den Head als bereits geschlossen. Alles, was nach dem ersten Element außerhalb des Head eingefügt wird, kommt zu spät.
  2. Er muss im HTML stehen, das der Server ausliefert. Öffnen Sie view-source: oder besser curl -sS https://example.com | grep baidu-site-verification. Erscheint der Tag nur im Element-Inspector der DevTools, hat JavaScript ihn nach der Hydration eingefügt, und er zählt nicht. Genau daran scheitert es bei clientseitig gerenderten React- und Vue-Anwendungen, und deshalb ist die Datei-Methode bei einer SPA die einfachere.
  3. Er muss das Framework überleben. Head-Manager entfernen Duplikate und bereinigen. Next.js will ihn im Metadata-Export sehen und nicht als verirrtes <meta> in einer Komponente. React Helmet verwirft Tags, die außerhalb seines Providers gerendert werden. Manche CMS-Sicherheitsplugins entfernen Meta-Tags mit unbekannten Namen. Ein Tag-Manager kann ihn nicht setzen, weil er clientseitig läuft.

Platzierung je nach Framework:

// Next.js App Router, app/layout.js
export const metadata = {
  other: { 'baidu-site-verification': 'codeva-XXXXXXXXXX' },
}
// WordPress, functions.php eines Child-Themes
add_action('wp_head', function () {
  echo '<meta name="baidu-site-verification" content="codeva-XXXXXXXXXX" />' . "\n";
}, 1);

Auf einer serverseitig gerenderten Website setzen Sie ihn ins Basis-Template neben Charset und Viewport und vergessen ihn. Bei Hugo ist das layouts/_default/baseof.html, bei Django das Basis-Template, das alle Seiten erweitern.

Methode 3: der CNAME-Eintrag

Die DNS-Methode ist die richtige, wenn Sie überhaupt nicht deployen können, wenn die Website hinter einer Appliance liegt, die Sie nicht kontrollieren, oder wenn die Prüfung jedes künftige Deployment überstehen soll. Sie belegt außerdem die Kontrolle über die gesamte Domain statt über ein einzelnes Dokument.

Baidu nennt Ihnen ein zufälliges Host-Label, das Sie unter Ihrer Domain anlegen und auf Baidu zeigen lassen:

abcdef123456.example.com.  3600  IN  CNAME  ziyuan.baidu.com.

In den meisten DNS-Oberflächen tragen Sie nur das linke Label ein, weil die Zone implizit ist:

| Feld | Wert | | --- | --- | | Typ | CNAME | | Name / Host | abcdef123456 | | Wert / Ziel | ziyuan.baidu.com | | TTL | 3600, oder der niedrigste Wert, den das Panel während des Testens zulässt |

Vier Dinge gehen hier immer wieder schief:

  • Die Domain wird doppelt angehängt. Wer abcdef123456.example.com in ein Panel tippt, das die Zone ohnehin ergänzt, erzeugt abcdef123456.example.com.example.com. Zeigt Ihr Panel nach dem Speichern den vollqualifizierten Namen an, lesen Sie ihn gegen.
  • Der abschließende Punkt beim Ziel. In einer rohen Zonendatei wird ziyuan.baidu.com ohne den finalen Punkt relativ zur Zone interpretiert und wird zu ziyuan.baidu.com.example.com. Panels nehmen Ihnen das ab, named und Terraform-Dateien nicht.
  • Ein Proxy vor dem Eintrag. Bei Cloudflare löst ein proxyter Eintrag (orange Wolke) von außen nicht mehr als CNAME auf: Die autoritative Antwort sind dann Cloudflares A-Records. Stellen Sie den Verifizierungseintrag auf DNS only.
  • Weniger warten als die TTL. Hat ein Resolver für diesen Namen bereits eine negative Antwort im Cache, gilt die alte TTL. Prüfen Sie, was die Außenwelt tatsächlich sieht, nicht das, was Ihr Panel behauptet.
dig +short abcdef123456.example.com CNAME
# ziyuan.baidu.com.

dig +short @8.8.8.8 abcdef123456.example.com CNAME

Lassen Sie den Eintrag stehen. Wer ihn nach erfolgreicher Prüfung löscht, handelt sich später eine fehlgeschlagene Neuverifizierung ein.

Warum die Verifizierung scheitert, obwohl alles richtig aussieht

Sie haben die Datei gecurlt, sie liefert 200, und Baidu sagt trotzdem Nein. Arbeiten Sie diese Liste ab:

  • Eine Bot-Challenge oder eine WAF-Regel. Cloudflare Bot Fight Mode, AWS WAF Managed Rules und die meisten „Under Attack"-Einstellungen liefern jedem Client, der keine Skripte ausführt, ein JavaScript-Interstitial mit 403 oder 503. Baidus Abrufdienst führt keine Skripte aus. Nehmen Sie den Verifizierungspfad oder den Crawler auf die Allowlist.
  • Geoblocking. Viele europäische Websites blockieren oder drosseln Traffic aus dem chinesischen Festland, um Scraping einzudämmen. Der Verifizierungsabruf kommt aus genau diesem Bereich. Vergewissern Sie sich, dass ihn am Edge nichts verwirft.
  • Der User-Agent wird gefiltert. Der Crawler meldet sich als Baiduspider. Manche Security-Stacks halten unbekannte Crawler-Kennungen für Scraper. Wenn Sie vor dem Freischalten prüfen wollen, ob eine Anfrage echt ist: Das Reverse DNS der Quell-IP löst auf *.baidu.com oder *.baidu.jp auf, und der Forward-Lookup muss dazu passen.
  • robots.txt blockiert den Abruf. Ein Disallow: / unter einem Wildcard-User-Agent oder ein von jemand anderem hinterlassener expliziter User-agent: Baiduspider-Block stoppt den Abruf, bevor er beginnt.
  • Ein TLS-Problem, das Browser verbergen. Ein fehlendes Zwischenzertifikat wird von Desktop-Browsern stillschweigend repariert, von einfachen Abrufdiensten nicht. Schicken Sie Ihre Domain durch einen externen TLS-Checker, statt einem grünen Schloss zu vertrauen.
  • Die falsche Origin verifiziert. Die Datei liegt auf www.example.com, in Baidu steht die Property als example.com. Keine Fehlermeldung wird Ihnen das verraten.
  • Langsames erstes Byte. Server in Europa ohne Präsenz in China antworten auf eine Anfrage aus Peking langsam, und ein kalter Serverless-Start obendrauf kann das Abruf-Timeout überschreiten. Es zu einer anderen Tageszeit erneut zu versuchen, hilft tatsächlich.

Welche Methode wählen

Deployen Sie eine statische Datei, wenn Sie eine Build-Pipeline haben: Sie wird am seltensten verstümmelt und lässt sich am leichtesten testen. Nehmen Sie den Meta-Tag, wenn Sie in einem CMS arbeiten und Ihre Seiten serverseitig gerendert werden. Nehmen Sie den CNAME, wenn Sie die Website gar nicht anfassen können oder wenn die Inhaberschaft einmal auf Domainebene bewiesen und nie wieder angerührt werden soll.

Was auch immer Sie wählen: Lassen Sie es dauerhaft bestehen und notieren Sie es in Ihrer Infrastrukturdokumentation, neben Ihren übrigen DNS-Einträgen. Wer in achtzehn Monaten die mysteriöse Datei löscht, sind Sie selbst.

Was die Methoden nicht lösen

Alle drei Methoden setzen voraus, dass Sie bereits in einem Baidu-Konto angemeldet sind. Die Registrierung wird per SMS an eine Mobilfunknummer vom chinesischen Festland bestätigt, und für viele Properties verlangt Baidu zusätzlich eine Identitätsprüfung (实名认证) mit einem chinesischen Personalausweis oder einer chinesischen Geschäftslizenz. Ein Unternehmen in Frankfurt oder Manchester mit einer tadellos konfigurierten DNS-Zone kommt trotzdem nicht bis zum Verifizierungsbildschirm.

Genau dafür gibt es unseren Baidu-Anmeldedienst. Sie nennen uns die Domain, führen auf Ihrer Seite eine Prüfung der Domain-Inhaberschaft durch, und wir übernehmen die Anmeldung und berichten, was Baidu tatsächlich indexiert hat, zum Festpreis pro Domain. Keine chinesische Telefonnummer, keine chinesische Gesellschaft, kein eigenes Baidu-Konto.

Wenn Sie zuerst das Gesamtbild wollen: Der vollständige Leitfaden zur Baidu-Anmeldung behandelt Sitemaps, die Push-API und wonach Baidus Ranking tatsächlich belohnt. Wenn Sie es lieber besprechen, buchen Sie ein Gespräch.

Leistung

Wir übernehmen das komplett

Nachweis der Domain-Inhaberschaft, Sitemap- und URL-Übermittlung, zwei Wochen später der Indexierungsbericht. Eine Domain, ein Festpreis, ohne chinesische Telefonnummer, ohne chinesische Gesellschaft und ohne eigenes Baidu-Konto.

Zur Baidu-Anmeldung