El hotlinking es una práctica conocida también como inline inking, leeching, direct linking o, muy apropiadamente, robo de ancho de banda. Consiste en enlazar dentro de una página el contenido de otra, normalmente imágenes. Con esto se consigue, por ejemplo, mostrar una foto en tu página usando un ancho de banda que paga otro. El problema aparece cuando buena parte del tráfico de tu página es por hotlinking y en una semana casi te has comido tu tope para el mes. Ese es el momento para poner freno a esos desaprensivos que por malicia, dejadez o simple desconocimiento están sangrando día tras día el ancho de banda por el que has pagado.
La solución pasa por usar una interesante herramienta que ofrecen los servidores Apache: añadir archivos .htaccess en los directorios en los que están tus datos. Con estos archivos no hacemos más que definir la forma en que los usuarios acceden a los datos que hay en el directorio en el que incluimos el archivo .htaccess. Por ejemplo, podemos bloquear accesos por IPs o rangos de IPs, bloquear accesos por referrer, impedir el listado de los archivos de los directorios o, como queremos, impedir el acceso a los archivos desde otro dominio distinto al propio (hotlinking). Para ello, no hay más que añadir las siguientes líneas en el archivo .htaccess del directorio principal (o en el que queramos bloquear el acceso):
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mydomain.com/.*$ [NC]
RewriteRule \.(gif|jpg|js)$ - [F]
Sólo hay que sustituir mydomain por nuestro propio dominio y añadir las extensiones que queramos bloquear. En caso de que queramos redirigir la petición a una página que indique que no se permite el hotlinking o a una imagen insinuando que estás haciendo algo malo, sólo hay que cambiar la última línea por algo así:
RewriteRule \.(gif|jpg)$ http://www.mydomain.com/angryman.jpe [R,L]
Cuidado con que la imagen de redirección caiga dentro de la prohibición, porque entonces creamos un bucle infinito de redirección que seguro no le sienta bien al sistema. He visto casos en los que la imagen a la que redirige la petición es un Goatse en todo su esplendor. Nosotros hemos sido más elegantes y cualquiera que intente enlazar una imagen de Zooglea verá está otra simpática foto en su lugar:
Esperamos que nadie se moleste por esta decisión, pero lo cierto es que llevamos un par de meses pasándonos del límite en el ancho de banda contratado. El día que seamos tan poderosos como Google y tengamos ancho de banda infinito (más uno), permitiremos de nuevo el hotlinking. Hasta entonces, recomiendo PhotoBucket o cualquier otra páginas de los cientos que se dedican a alojar imágenes.
- Comprueba si tu página permite el hotlinking.
- Generador automático de .htaccess. Normalmente, hay que añadir las líneas que aparecen, no sustituir el archivo completo.










Hace algún tiempo escribí sobre lo mismo en barbacana.
Una información útil que no encontré en ningún sitio (salvo en el manual de apache) son los comandos RewriteLog y RewriteLogLevel que permiten depurar que tal se comporta nuestra regla y como interaccionan con otras reglas que necesite el gestor de contenidos que usamos para funcionar (en mi caso había interacción drupal-antihotlinking).
PD. Necesito un curso de wordpress nivel usuario
Yo uso el lector de feeds online Alesti (http://www.alesti.org/)… y ahora ya no puedo ver las imágenes (bueno, sólo puedo ver UNA imagen). Echad un vistazo a ese archivo, porque quizá estáis bloqueando también a otros lectores.
Un saludo!
Tienes mucha razón y (creo) que ya lo he solucionado. Los lectores que ahora pueden acceder a las fotos son: alesti, attensa, bloglines, feedness, netvibes, newsgator, rojo y google reader.
Por favor, confírmame que ahora sí puedes ver las imágenes.
Gracias y un saludo.
Sí, ya todo OK, sin problemas. Gracias!