Ver Mensaje Individual
  #3 (permalink)  
Antiguo 18/08/2009, 14:41
BoZ
 
Fecha de Ingreso: octubre-2007
Mensajes: 11
Antigüedad: 17 años, 3 meses
Puntos: 0
Respuesta: Por favor ¿como puedo evitar el Hotlink directo?

Bueno por ahora solo he encontrado este script con cookie , pero no es exactamente lo que ando buscando (por .htaccess), les dejo el código quizás a alguien le sirva, lo encontré en webtaller.com.

Código PHP:
<?php
// Esto tiene que estar al principio del
// todo del documento antes de enviar nada
// al navegador (ni siquiera un espacio)
// de lo contrario tendremos un error
setcookie 'descarga' '1' );
?>

Luego situaremos el archivo a descargar en una carpeta secreta a la que daremos un nombre aleatório para que no sea fácil de encontrar, por ejemplo 23hi938fdfgh39, y crearemos el siguiente archivo:

descargar.php

<?php
// Indicamos el nombre del directório
define 'dir' '23hi938fdfgh39' );
// Comprovamos que exista la cookie
if( $_COOKIE 'descarga' ] == '1' ){
// Si existe la cookie intentamos
   // leer el archivo
$archivo $_GET 'archivo' ];
   if( 
file_exists dir '/' $archivo )){
// Si existe el archivo lo enviamos
header 'Content-Type: application/octet-stream' );
header 'Content-Disposition: attachment; filename=' $archivo );
     echo 
file_get_contents dir '/' $archivo );
   } else {
// Sino existe el archivo enviamos
     // un error 404
header 'HTTP/1.0 404 Not Found' );
     echo 
'<h1>ERROR</h1><br />No se h' ,
'a encontrado el archivo sol' ,
'icitado' ;
   }
} else {
// Sino hay cookie enviamos un error
   // 401
header 'HTTP/1.0 401 Unauthorized' );
   echo 
'<h1>ERROR</h1><br />No puedes' ,
'acceder a este archivo desde ' ,
'un servidor externo' ;
}
?>
saludos.