Respuestas de foro creadas

Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)
  • Hola,

    almendron tiene razón: el robots.txt sigue incompleto aunque la vista previa ya funcione.

    Al meter solo el bloque de Yoast para facebookexternalhit, se perdieron las reglas por defecto de WordPress. Debería quedar así:

    User-agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php

    User-agent: facebookexternalhit
    Allow: /

    Sitemap: https://www.noticiasbierzo.es/sitemap_index.xml

    Un detalle útil: robots.txt no provoca un 403. Solo dice al bot que no pida la página; el 403 lo pone el servidor o un firewall. Si con el robots bien vuelve el 403, mira hosting/seguridad (whitelist de facebookexternalhit, y de paso Twitterbot/LinkedInBot).

    Y si un día falla la imagen: WebP a veces no lo traga Facebook (mejor JPG/PNG en og:image), y og: duplicadas (Yoast + tema) confunden. Después de cada cambio: Sharing Debugger → Scrape Again.

    Un saludo.

    Hola, WhaS:

    Después de varios días peleándote con la vista previa, es normal que al ver que por fin funcionaba dieras el tema por cerrado. Aun así, almendron tiene toda la razón con lo del robots.txt, y merece la pena dedicarle dos minutos más.

    Al guardar el bloque de Yoast tal cual, se perdieron las reglas que WordPress incluye por defecto. Ahora mismo tu robots.txt no tiene ninguna regla para «User-agent: *», así que la indicación sobre /wp-admin/ ya no llega a ningún buscador. Tal como te dijo almendron, el archivo completo debería quedar así:

    User-agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php
    
    User-agent: facebookexternalhit
    Allow: /
    
    Sitemap: https://www.noticiasbierzo.es/sitemap_index.xml

    Y un detalle que te puede ahorrar muchos días si el problema vuelve: una regla de robots.txt no genera un 403. El robots.txt solo le pide al rastreador que no entre; el 403 lo devuelve siempre el servidor, o un cortafuegos delante de él. El depurador de Facebook a veces muestra los dos casos con el mismo mensaje, y ahí es donde se pierde el tiempo.

    Para saber en treinta segundos cuál de los dos es, lanza estas dos líneas desde cualquier terminal:

    curl -s -o /dev/null -w "%{http_code}" -A "facebookexternalhit/1.1" https://www.noticiasbierzo.es/
    curl -s -o /dev/null -w "%{http_code}" -A "Mozilla/5.0" https://www.noticiasbierzo.es/

    Si la primera devuelve 403 y la segunda 200, el bloqueo no está en WordPress: está en el cortafuegos del hosting o en un plugin de seguridad que filtra por user-agent. En ese caso basta con pedir al hosting que ponga en lista blanca facebookexternalhit (y, ya puestos, Twitterbot y LinkedInBot).

    Con eso quedas cubierto por los dos lados: los buscadores reciben las reglas correctas y, si Facebook vuelve a fallar, sabrás en un minuto dónde mirar.

    Un saludo.

Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)