J'essaie de charger un simple iframe dans l'une de mes pages Web, mais il ne s'affiche pas. Je reçois cette erreur dans Chrome:
Refused to display 'https://cw.na1.hgncloud.com/crossmatch/index.do' in a frame because an ancestor violates the following Content Security Policy directive: "frame-ancestors 'self' https://cw.na1.hgncloud.com".
Invalid 'X-Frame-Options' header encountered when loading 'https://cw.na1.hgncloud.com/crossmatch/index.do': 'ALLOW-FROM https://cw.na1.hgncloud.com' is not a recognized directive. The header will be ignored.
Voici le code de mon iframe:
<p><iframe src="https://cw.na1.hgncloud.com/crossmatch/" width="680" height="500" frameborder="0"></iframe></p>
Je ne suis pas vraiment sûr de ce que cela signifie. J'ai déjà chargé beaucoup d'iframes et je n'ai jamais reçu de telles erreurs.
Des idées?
Merci
Cela signifie que le serveur http à cw.na1.hgncloud.com
_ envoie des en-têtes http pour indiquer aux navigateurs Web comme Chrome afin de permettre le chargement du fichier iframe de cette page ( https://cw.na1.hgncloud.com/crossmatch/ ) uniquement à partir d'une page hébergée sur le même domaine (cw.na1.hgncloud.com):
Content-Security-Policy: frame-ancestors 'self' https://cw.na1.hgncloud.com
X-Frame-Options: ALLOW-FROM https://cw.na1.hgncloud.com
Vous devriez lire ceci:
Cette erreur s’explique par le fait que le serveur hôte de https://cw.na1.hgncloud.com a fourni des en-têtes HTTP pour protéger le document. L'une d'elles est que les ancêtres du cadre doivent appartenir au même domaine que le contenu d'origine. Il semble que vous tentiez de placer l'iframe à un emplacement de domaine différent du contenu de l'iframe, enfreignant ainsi la politique de sécurité du contenu définie par l'hôte.
Consultez ce lien sur politique de sécurité du conten pour plus de détails.
Pour quiconque appelle sur le même serveur pour son IFRAME, transmettez cet en-tête simple dans la page IFRAME:
Content-Security-Policy: frame-ancestors 'self'
Ou ajoutez-le à la configuration CSP de votre serveur Web.