Interdire Iframe mais autoriser certains sites

noren

WRInaute accro
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
 

noren

WRInaute accro
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>
	    }
 

Louis63

WRInaute discret
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.
 

noren

WRInaute accro
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
 

noren

WRInaute accro
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 ?
 

Discussions similaires

Haut