webentwicklung-frage-antwort-db.com.de

Bingbot codiert Nicht-ASCII-Zeichen in URLs mit einem umgekehrten Schrägstrich x und nicht in Prozent

Wir haben Hashbang-URLs mit erweiterten UTF-8-Zeichen. Zum Beispiel:

https://example.com/#!каталог

Bing Bot holt den HTML-Snapshot https://example.com?_escaped_fragment_=каталог verschlüsselte URL als \xD0\xB0.... Unser Server hat darauf mit einem Fehler von 400 geantwortet. Sie akzeptieren nur prozentual codierte URLs. %D0%B0... würde den Status 200 OK erhalten.

Wie kann ich dieses Problem lösen?

zum Beispiel: enter image description here

6
ts.tsogtgerel

Sie sollten den Bildnamen codieren, bevor Sie ihn zum Crawlen für Bots angeben, d. H. Der Bildname sollte in Ihrem Seitenquellcode %2F%D0%B7%D1%83%D1%80%D0%B0%D0%B3.jpg lauten. Alle modernen Browser dekodieren es und für Benutzer werden die UTF-8-Zeichen auf menschenfreundliche Weise angezeigt.

Führen Sie also eine serverseitige Codierung durch und codieren Sie alle diese Zeichen, bevor Sie sie in Ihren Quellcode aufnehmen.

Zeigen Sie den Quellcode für diese Wikipedia-Seite an und Sie werden verstehen: https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80% D0% B0% D0% BC% D0% BC% D0% B0_% D1% 80% D0% B0% D0% B7% D0% B2% D0% B8% D1% 82% D0% B8% D1% 8F_% D0% 9E% D0% 9E% D0% 9D

Update: Basierend auf einer eingehenderen Überprüfung der Website und den Kommentaren anderer StackExchange-Benutzer. Anscheinend müssen Sie alle Ihre URLs in Ihrer Website und XML-Sitemap codieren. Auf Ihrer Website sind weder URLs noch URLs in der XML-Sitemap verschlüsselt. Bitte verwenden Sie überall UTF-8-codierte URLs. Denken Sie daran, dass Bingbot weit hinter Googlebot zurückliegt und erst kürzlich damit begonnen hat, JS-basierte Websites in größerem Maßstab zu rendern. Die Verwendung von Nicht-ASCII-Zeichen kann zu Fehlern bei Bingbot führen.

Die URLs in Ihrem Quellcode und DOM sowie in Ihrer XML-Sitemap müssen auf der Grundlage Ihres Beispiels folgendermaßen codiert sein:

https://example.com/#!%D0%BA%D0%B0%D1%82%D0%B0%D0%BB%D0%BE%D0%B3

Hier können Sie mehr über die korrekte Sitemap-Codierung lesen: https://www.sitemaps.org/protocol.html#escaping

5
gintsg

Sie müssen wahrscheinlich das urlencode images src -Attribut in <img> html-Tags angeben.

0
iv12345