Proteger tu blog del Hotlinking desde el .htaccess

A esta altura del partido deben saber lo que es el hotlinking, pero, si no es así, les explico. Éste término es utilizado por bloggers y gente similar, y proviene del problema de que otros sitios enlacen contenido -imágenes, mayormente-, y gasten parte de la banda ancha de tu servidor.

Pero con unas líneas de código en el .htaccess (recuerda siempre hacer una copia de seguridad antes de modificarlo), se puede evitar lo antedicho. Sólo hay que agregar esto:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(.+.)?TUSITIO.com/ [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteRule .*.(jpe?g|gif|bmp|png)$ /imagenes/nohotlink.jpg [L]

En cualquier parte del archivo.

Luego, modifica “TUSITIO” por el nombre de tu sitio, y “/imagenes/nohotlink.jpg” por la dirección una imagen creada por tí, que aparecerá cuando alguien intente hacer hotlinking, por ejemplo:

Imagen de ejemplo para el hotlinking

Via WPRecipies

Comentarios
  1. Cuidado porque si no estoy equivocado, creo que así impides también que google reader, feedburner, etc. muestren tus imágenes, y esto es un perjuicio para los usuarios.

    Escrito el10/06/2009
    • @Astjim: Efectivamente.

      Yo soy más partidario de bloquear solo a aquellos sitios que se exceden en vez de a todos. Hay algunos que por un error humano likean sin querer una imagen y por una no pasa absolutamente nada el problema es cuando se pasan pero si no exceden no lo bloqueo. Muchas veces hay que pensar que sin querer nos podemos confundir o incluso que en un momento dado tengamos que escribir una entrada importante y no disponga de un ancho de banda suficiente para subir una imagen (a mi me ha pasado) pues linkeo la imagen de otro sitio durante unas horas hasta que pueda tener una mejor conexión a internet y poderla subir a mi servidor.

      Ante todo nos tenemos que ayudar unos a otros y haciendo este tipo de tácticas no nos ayudamos. Si no se abusa permítelo.

      Escrito el10/06/2009
  2. [email protected]

    Pues a mí particular no subo ninguna imagen a mi servidor más bien las subo a servidores gratis…

    http://www.imageshack.us
    http://www.subirimagenes.es
    http://www.tinypic.com

    Así me evito de andar peleando por ello… el espacio que puedo ocupar en el servidor subiendo imagenes lo ocupo para otro sustento…

    Escrito el11/06/2009
    • @[email protected]: En mi opinión eso es lo peor que se puede hacer ya que si algún día ese servidor cierra o te corta el grifo pierdes todas tus imágenes. Es mejor contratar un host para alojar exclusivamente las imágenes que subirlas a servidores gratuitos donde no sabes que pueden pasar con ellas en un futuro.

      Escrito el11/06/2009
  3. Hola [email protected], es una opción a considerar, aunque a mí personalmente tampoco me convence porque dependes de otro servidor, de que no esté caído ni saturado, etc. pudiendo suponer un notable retardo en la carga de la página.

    La verdad es que hoy por hoy no veo ninguna solución ideal, de momento bloqueo solo a los que se pasan, pero a veces ni me entero me entero por casualidad.

    Escrito el11/06/2009
  4. dark_tairon

    puedes usar este codigo para que no te bloqueen google reader y feedburner:
    RewriteCond %{HTTP_REFERER} !^http://www.google.com/reader/view/.*$ [NC]
    RewriteCond %{HTTP_REFERER} !^http://www.google.com/reader/m/view/.*$ [NC]
    RewriteCond %{HTTP_REFERER} !^http://[^/.].feedburner.com$ [NC]
    RewriteCond %{HTTP_REFERER} !^http://feeds2.feedburner.com/Taironcave$ [NC]

    Escrito el12/06/2009
  5. Estaria bueno agregar una lista negra de sitios, eso seria mejor!

    Saludos!

    Escrito el13/06/2009
  6. Personalmente, ni me molesto en ponerles una imagen alternativa (con la consiguiente pérdida adicional de ancho de banda) a quienes se pasan los modales de uso razonable por el arco de triunfo. Les endoso un FAIL, sin más.

    En cuanto a Google y otros motores de búsqueda: no van a tener ningún problema al rastrear. Quien sí va a tener problemas es quien, tras hacer clic en la miniatura de la imagen en el motor, intenta ver la imagen fuera de contexto (p.ej. mediante clic en “Ver imagen en tamaño completo”). Pues sabes lo que te digo: me importa un bledo, aquella “inconveniencia”… Desde luego, no pienso aligerar el trabajo a vagos y/o tacaños.

    Por si interesa, he aquí mi bloquecito anti-chupatráficos:
    RewriteCond %{HTTP_REFERER} !^$
    RewriteCond %{HTTP_REFERER} !^http://nv1962.net/.*$ [NC]
    RewriteCond %{HTTP_REFERER} !^http://nv1962.net$ [NC]
    RewriteRule .*.(mp3|jpe?g|gif|bmp|png|js|css)$ - [F,NC]

    Se verá que intentos de visionar un archivo del tipo definido simplemente fallarán. Quien atente contra la educación, que se apañe con una respuesta a su nivel.

    Obsérvese también que incluyo, además de los MP3, también archivos CSS y JS; con eso, le ahorro al intérprete PHP también la molestia de arrancar sólo para satisfacer a algún que otro gamberro. Por cierto: se verá que quien pide DIRECTAMENTE un archivo, o sea: sin tener una referencia en la cabecera de solicitud, sí es admitido – o mejor dicho, es admitido a las siguientes fases de filtrado de maleantes (y que por supuesto no pienso compartir aquí – jejeje)

    Escrito el19/06/2009
  7. Hablando de cosas útiles: hay un guión disponible que, con sólo introducir el dominio y retocar (si cabe) los tipos de archivos de acceso remoto vetado, aquí:

    http://tools.dynamicdrive.com/userban/

    Escrito el19/06/2009
  8. @ Älvaro. He aplicado parte de tus consejos a los hotlinkers y spamers más insistentes y genial :)

    Escrito el02/07/2009
  9. Cuando se hace esto y se se usa el plugin NextGenGallery el show wit lens o usando coolpix deja de funcionar, aun añadiendo el dominio de coolpix como admitido en el htaccess no funciona, alguien sabe como solucionar esto?

    Escrito el04/08/2009
  10. Hola Leo, no debe interferir con NextGenGallery. Tengo ese plugin en varios sitios, todos ellos con el mismo sistema de protección contra chupatráficos, y no tengo problema alguno.

    Quizá la cuestión en tu caso sea que tienes las imágenes albergadas en OTRO dominio y/o sitio. Eso podría ser p.ej. el caso si usas otro sub-dominio (si p.ej. tienes el dominio ejemplo.com y colocas las imágenes y demás material estático mediante image.ejemplo.com) o si tienes las imágenes en una cuenta de Flickr o de Picasa. En contadas ocasiones, puede dar complicaciones también un servicio como el de AWS de Amazon.

    Sin embargo, se supone que el bloqueo de tráfico es para las procedencias y no el destino del visitante; no es nada lógico ni común que un visitante proceda del sitio en el que tienes hospedadas las imágenes…

    Por eso, creo que debe haber más bien otro tipo de problema que se te interpone.

    Aplicaciones para tratar, gestionar y subir imágenes (como suelen venir con muchas cámaras digitales, como los Nikon de la serie Coolpix) tampoco deben interferir. En cualquier caso, no me suena coolpix (salvo cuando te llamas Stephen Schoff, claro…)

    Escrito el04/08/2009
  11. Me refiero a la opcion de Cooloris Lens de NextGen Gallery, en una esquina trae la opcion de “View en 3D, si le das clik te lleva a esta pagina.

    http://www.cooliris.com/

    Deja activo la opcion para que la vean funcionando… y como al aplicar las protecciones para hotlinking deja de funcionar, es decir, no se ven las imagenes.

    Gracias de antemano.

    Escrito el04/08/2009
  12. Pues ya diste la respuesta: las variantes de Cooliris que se pueden aplicar con NextGenGallery requieren sitios externos. Dependerá de la aplicación y del servicio utilizado cual es el dominio que hay que definir en las excepciones, ya que en la práctica las llamadas redirigen tráfico desde el dominio externo en cuestión a tu sitio.

    En otras palabras: eso es cuestión de seguir las instrucciones que se dan aquí y luego simplemente incluir los dominios en cuestión entre las excepciones admitidas en el .htaccess.

    Escrito el04/08/2009
  13. Gracias por el dato, por si a alguien se le ofrece se pone esto.

    RewriteCond %{HTTP_REFERER} !^http(s)?://(.+.)?piclens.com [NC]

    Asi ya debe funcionar ese añadido de nextgengallery.

    Escrito el05/08/2009
  14. texas car wash Upload pictures, upload images, wallpapers, image hosting, free image hosting service, free upload images

    Escrito el12/10/2011
  15. Thanks for share. Good luck for you

    Escrito el28/11/2012

DEJA TU COMENTARIO