Interdire Iframe mais autoriser certains sites

Bonjour

Je cherche donc un moyen d'interdire les iframes mais d'autoriser seulement certains sites. Il me semble par exemple que google image passe par des iframe, ou googlecache. Mais j'ai également besoin de l'autoriser sur d'autres sites.

Est-ce qu'un test en javascript suffit ?

Code:
<SCRIPT language="JavaScript">

if(window.parent.length!=0) {window.top.location.replace(document.location.href);}

</script>

Ce script bloque tous les iframe mais comment autoriser certains sites ?

J'ai également vu X-FRAME-OPTIONS mais je dois avouer ne pas trop savoir m'en servir notamment dans le htaccess.

Si je met, je vais bloquer l'iframe de GG également ?

Code:
Header set X-Frame-Options SAMEORIGIN
 
Et une solution PHP et javascript de ce type de ce type :

Code:
if(!strpos($_SERVER['HTTP_REFERER'], "google") || .... )
	    {
	       <SCRIPT language="JavaScript">

if(window.parent.length!=0) {window.top.location.replace(document.location.href);}

</script>
	    }
 
pour detecter google qui n'indique pas de referer, il vaux mieux tester l'user agent, en sachant qu'il est possible de se faire passer pour le user agent de google.
 
il n'y a pas de moyen plus général pour autoriser tel ou tel site ?
sachant qu'il n'y aurait pas que Google que je souhaites autoriser
 
Ok merci donc pour les moteurs de recherche je contrôle l'user agent et pour les autres sites le referer ? Et je bloque les iframe en javascript ?

Et avec set X-Frame-Options dans le .htaccess comment devrais-je procéder ?
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut