Evitar hotlinking de imágenes utilizando htaccess

Evitar hotlinking de imágenes utilizando htaccess

El llamado hotlinking consiste en realizar un enlace directo a ficheros (imágenes, vídeos,etc), que pertenecen a otra página web desde luego el efecto es negativo para el sitio web en el cual están alojados estos archivos, pues consume la transferencia mensual contratada en el plan de web hosting contratado por el sitio web original.

En otras palabras, utilizando el archivo htaccess vamos a evitar que nos “roben” ancho de banda o transferencia mensual de nuestra cuenta de web hosting.

Para comenzar vamos a abrir el archivo .htaccess que se encuentra en la carpeta public_html si no encuentras el archivo puedes crear uno.

Ahora vamos a comenzar agregando las siguientes líneas para configurar el archivo htaccess de manera que neguemos el acceso a nuestros archivos remotamente y lograr nuestro objetivo que es impedir el hotlinking.

Configuración de htaccess para evitar hotlinking

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?tudominio.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?facebook.com [NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ http://www.imageshack.us/prohibido.jpg [R,NC,L]

Explicación:

  1. En la primera línea activamos la opción “rewrite engine” utilizada para el proceso de redirección.
  2. La línea 2 permite a los visitantes sin ningún “referrer” o referencia ver la imagen, esto es útil para mostrar la imagen a aquellos que utilizan la opción de navegar sin dejar rastros, así aseguramos mostrarle la imagen a ellos también.
  3. Línea 3, permitimos a nuestro propio sitio web cargar las imágenes.
  4. Similar a la línea 3, permitimos a facebook.com (o cualquier otro dominio) cargar nuestras imágenes, en el caso de facebook.com esto es util para que facebook utilice la opción “og:image” al publicar nuestros posts en la red social.
  5. Línea 5,incluimos las extensiones de ficheros a los que queremos impedir el hotlinking y además de mostramos una imagen indicando que está prohibido realizar enlaces directos a archivos de tu sitio web.

De manera opcional, la imagen que muestra que estamos negando que nos enlacen los archivos puede ser almacenada en un servidor de imagen gratuito como por ejemplo imageshack.com

Nota:  nunca está demás recordarte que no olvides reemplazar tudominio.com por tu propio dominio.

2 thoughts on “Evitar hotlinking de imágenes utilizando htaccess

  1. eduardo - 04/05/2011 at 4:21 am

    Estupendas lineas .htaccess para recuperar algo de ancho de banda del insaciable hotlink…

    Eduardo.

    Responder
    • Dan - 04/05/2011 at 7:01 am

      @ eduardo, Gracias por tu comentario, nos alegra saber que te ha servido!

      Responder

Comentar