Problème avec Oneboxing d'une image d'un domaine spécifique

Quelqu’un peut-il m’éclairer sur ce qui pourrait se passer ici ? :thinking:

J’ai deux images. Elles sont identiques. La seule différence est le nom de domaine.

Une image refuse de faire un onebox sur mon Discourse exécutant la version 3.3.0.beta2-dev (7a083daf27), l’autre image fait un onebox sans problème.

Image un : https://dronescene.co.uk/images/uploads/temporiginal/test11.png

Image deux : https://dev.dronescene.co.uk/images/uploads/temporiginal/test11.png

Pendant que je me creusais la tête pour trouver la cause du problème, j’ai remarqué que l’URL du onebox ajoutait quelques paramètres supplémentaires à la fin de l’URL :

Je pense que c’est une fausse piste cependant :thinking:

Si je visualise les deux images directement dans un onglet de navigateur et que je regarde les en-têtes de réponse HTTP dans l’onglet réseau de la console du navigateur, je ne vois aucune différence entre les deux.

Il n’y a aucune erreur dans mes logs Discourse.

Aurais-je appliqué des paramètres spécifiques au domaine sur mon Discourse que j’aurais oubliés depuis longtemps ? :thinking:

Qu’est-ce qui pourrait d’autre causer l’échec du Onebox avec un HTTP/404 alors que l’image est bien présente ? :thinking:

Par où commencer pour déboguer pourquoi une URL fonctionne et l’autre non ? :thinking:

Si cela est pertinent, les deux domaines sont proxysés via Cloudflare - mais tous les paramètres y sont également identiques.

L’une des principales utilisations de Cloudflare n’est-elle pas d’empêcher les bots de demander des fichiers sur votre site ? On dirait que ça fonctionne comme prévu :rire :
Vous devriez vérifier votre configuration Cloudflare, il y aura un moyen de désactiver la protection contre les bots.

2 « J'aime »

Est-ce que ça fonctionne ? :thinking:

Quelle est la différence ? :thinking:

L’adresse IP du serveur Discourse est mise sur liste blanche sur Cloudflare et je peux curl/wget les deux images depuis la ligne de commande du serveur exécutant Discourse.

J’ai du mal à comprendre pourquoi le onebox fonctionne pour une image mais pas pour l’autre.

Puisque vous contrôlez les deux serveurs, pouvez-vous vérifier quelle est la requête exacte, jusqu’au verbe, à l’agent utilisateur et aux autres en-têtes, et essayer de la reproduire avec un cURL qui l’imite ?

2 « J'aime »

Ah, excellente idée :+1: