Problema con Oneboxing una imagen de un dominio específico

¿Alguien puede arrojar algo de luz sobre lo que podría estar pasando aquí? :thinking:

Tengo dos imágenes. Son idénticas. La única diferencia es el nombre de dominio.

Una imagen se niega a hacer onebox en mi Discourse ejecutando 3.3.0.beta2-dev (7a083daf27), la otra imagen hará onebox sin problemas.

Imagen uno: https://dronescene.co.uk/images/uploads/temporiginal/test11.png

Imagen dos: https://dev.dronescene.co.uk/images/uploads/temporiginal/test11.png

Mientras me rasco la cabeza e intento averiguar cuál podría ser el problema, noté que la URL de onebox está agregando algunos parámetros adicionales al final de la URL:

Sin embargo, creo que esto es una pista falsa :thinking:

Si veo ambas imágenes directamente en una pestaña del navegador y miro las cabeceras de respuesta HTTP en la pestaña de red de la consola del navegador, no veo ninguna diferencia entre las dos.

No hay errores en mis registros de Discourse.

¿Podría haber aplicado alguna configuración específica del dominio en mi Discourse que he olvidado hace tiempo? :thinking:

¿Qué más podría causar que Onebox arroje un HTTP/404 cuando la imagen está realmente allí? :thinking:

¿Por dónde podría empezar a depurar por qué una URL funciona y la otra no? :thinking:

Si es relevante, ambos dominios están proxy a través de Cloudflare, pero todo es idéntico en la configuración allí también.

¿No es uno de los usos principales de Cloudflare bloquear que los bots soliciten archivos de tu sitio? Parece que está funcionando según lo previsto :laughing:

Deberías revisar tu configuración de Cloudflare, habrá una forma de deshabilitar la protección de bots allí.

2 Me gusta

¿Sí? :thinking:

¿Cuál es la diferencia? :thinking:

La dirección IP del servidor Discourse está en la lista blanca de Cloudflare y puedo hacer curl/wget de ambas imágenes desde la línea de comandos del servidor que ejecuta Discourse.

Me cuesta entender por qué el onebox funciona en una imagen pero no en la otra.

Dado que controlas ambos servidores, ¿puedes verificar cuál es la solicitud exacta, hasta el verbo, el user-agent y otras cabeceras, e intentar reproducirla con un cURL que la imite?

2 Me gusta

Ah, excelente idea :+1: