Desde PHP podrías hacerlo simplemente leyendo la variable de servidor:
HTTP_REFERER
No es infalible (esas cabeceras las puede suplantar cualquier software que las simule) pero funciona normalmente.
Por ejemplo .. podrías tener un array con tus dominos y hacer algo tipo:
Código PHP:
<?
// El dominio ha de ser sin [url]www.[/url]
$dominios[]="nose.com";
$dominios[]="nose2.com";
$dominios[]="nose3.com";
$referido=$_SERVER["HTTP_REFERER"];
$partes_referido=parse_url($referido);
if (!in_array($partes_referido['host'],$dominios)){
die ("Acceso incorrecto... No te aproveches de mi ancho de banda xDD");
}
// resto de tu script actual .. (puedes usar ese código como un include() .. eso sí .. ese código ha de estar en cada uno de esos servidores).
?>
Te recomiendo que leas en
www.php.net que hace cada función para comprender su funcionamiento ..
Un saludo,