Website-API-Verbindungstest schlägt fehl
Finden und beheben Sie die Ursache für „Test fehlgeschlagen“: Token, Signatur, falsche URL, Weiterleitungen, Timeouts oder Apache, das den Authorization-Header verwirft.
Diese Ansicht im Panel öffnenDie Website-API ermöglicht es SEOAsist, Korrekturen, Inhalte und llms.txt an eine selbst erstellte Website zu senden. Die Schaltfläche Verbindung testen ruft den Endpunkt /manifest Ihrer Website mit einer signierten Anfrage auf. Wenn der Test fehlschlägt, bleibt die Verbindung im Status Fehler und es wird nichts gesendet.
Symptome
Die Karte der Website-API auf der Registerkarte Korrekturkanäle der Website zeigt „Test fehlgeschlagen: …“. Der Text nach dem Doppelpunkt gibt den Grund an:
| Fehlertext | Bedeutung |
|---|---|
token rejected / unauthorized (401, 403) | Ihre Website hat das Token oder die Signatur nicht akzeptiert |
endpoint not found (is the Site API installed at this URL?) (404) | Unter dieser URL befindet sich keine Website-API |
redirect to … (use the final API URL) | Die URL leitet an eine andere Stelle weiter |
timeout | Die Website hat nicht innerhalb von 25 Sekunden geantwortet |
non-JSON response | Die Antwort ist kein JSON (z. B. eine HTML-Seite) |
unexpected manifest (spec "…") | Das Feld spec in /manifest ist falsch |
Behebung
- 401 / 403: Das Token im Panel muss genau mit der Umgebungsvariablen
SEOASIST_SITE_TOKENIhrer Website übereinstimmen. Starten Sie die Website neu, nachdem Sie die Variable festgelegt haben. Wenn Sie das Token verloren haben, generieren Sie ein Neues Token; das alte funktioniert sofort nicht mehr. - Unter Apache gibt der Server den Header
Authorizationmöglicherweise nicht an PHP weiter. Fügen Sie diese Zeile zu Ihrer.htaccesshinzu:SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1 - Signaturfehler: Die Signatur lautet
HMAC-SHA256(token, "<timestamp>.<raw body>"). Der Body ist bei GET-Anfragen leer. Zeitstempel, die älter als 300 Sekunden sind, werden abgelehnt, daher muss die Serveruhr korrekt sein. - 404: Geben Sie den gemeinsamen Stamm der Endpunkte als API-Basis-URL ein (z. B.
https://example.com/api/seoasist). Fügen Sie/manifestnicht hinzu; SEOAsist hängt es automatisch an. Klicken Sie nach dem Ändern auf URL speichern. - Weiterleitungen: Die Website-API darf niemals weiterleiten. Speichern Sie die endgültige Adresse aus dem Fehlertext (z. B. mit
https://oderwww) als API-Basis-URL. - Timeouts: Stellen Sie sicher, dass die Website aus dem öffentlichen Internet erreichbar ist. Lokale und interne Netzwerkadressen werden abgelehnt. Firewalls und Bot-Schutz dürfen die Anfragen von SEOAsist nicht blockieren.
- Manifest:
/manifestmuss JSON wie{"spec":"seoasist-site-api/1","capabilities":["rules","content","files"]}zurückgeben. Listen Sie nur die Funktionen auf, die Sie tatsächlich implementiert haben. Listen Sie auf einer mehrsprachigen Website die Sprachen auf, in denen Sie veröffentlichen können, unter Verwendung des optionalen Feldes"locales":["tr","en"]. - Klicken Sie erneut auf Verbindung testen. Sobald der Test erfolgreich ist, werden ausstehende Regeln sofort gesendet.
Der curl-Befehl auf der Registerkarte Test des Entwicklerhandbuchs sendet dieselbe signierte Anfrage von Ihrem Terminal aus. Sie können das Problem dort sehen, bevor Sie es im Panel versuchen.
Funktionieren Dinge immer noch nicht?
Der Test war erfolgreich, aber warum werden die Regeln nicht auf der Seite angezeigt?
Der Test prüft nur /manifest. Das Anwenden der Regeln auf dem Server während des Renderings der Seite liegt in der Verantwortung Ihres Codes. Wenn die Karte „letzter Push … Regeln“ anzeigt, haben die Regeln Ihre Website erreicht. Vergleichen Sie Ihren Code mit der Website-API-Referenz.
Ein übersetzter Beitrag wird mit „Nicht veröffentlicht, Sprachabweichung“ zurückgehalten. Warum?
Die Website-API empfängt nur Beiträge in den Sprachen, die die Website unterstützt: die Liste der Website-Sprachen, falls Sie eine festgelegt haben, andernfalls die primäre Sprache plus die locales, die Ihr /manifest meldet. Fügen Sie die Sprache zu locales im Manifest hinzu (oder zur Sprachliste der Website); SEOAsist liest das Manifest einmal neu, bevor ein Beitrag zurückgehalten wird, sodass ein erneutes Veröffentlichen ausreicht. Siehe Website-API-Einrichtung.
Das Senden schlägt fehl mit „Diese Website liegt außerhalb Ihres CoSuite-Website-Kontingents; sie ist schreibgeschützt.“
Dies passiert nur in Organisationen, die über CoSuite abgerechnet werden: Websites oberhalb des CoSuite-Website-Limits bleiben lesbar, können aber nicht geändert werden. Erhöhen Sie das Website-Kontingent in CoSuite oder entfernen Sie eine andere Website. Organisationen, die für ihren eigenen Tarif bezahlen, sehen diesen Fehler nie.
Ich möchte es von Grund auf neu einrichten. Wo fange ich an?
Kopieren Sie den Einrichtungs-Prompt von der Karte und geben Sie ihn dem AI-Coding-Assistenten oder Entwickler, der an Ihrem Projekt arbeitet. Die Schritte finden Sie unter Website-API-Einrichtung.
Verwandte Artikel
- Verbinden Sie eine eigens erstelle Website mit der SEOAsist Site APIFür Websites, die nicht auf WordPress oder Shopify laufen: Installieren und verbinden Sie die Site API, damit SEO-Korrekturen, Blogbeiträge und llms.txt automatisch serverseitig auf Ihre Website angewendet werden.
- Site-API-Referenz (seoasist-site-api/1)Die vollständige SEOAsist Site-API-Spezifikation: Authentifizierung und HMAC-Signierung, die vier Endpunkte, Regeltypen und eine Übersicht der fertigen Next.js/PHP-Beispiele.
- Audit-Probleme als beabsichtigt akzeptieren und automatisch behebenSo markieren Sie gewollte Probleme als Beabsichtigt, machen dies rückgängig und beheben Probleme automatisch mit Regeln oder einem GitHub-Pull-Request.