En el artículo de hoy veremos cómo evitar el Hot-Linking y así reducir el consumo de tráfico que nos generan los links a nuestras imágenes.
Imaginar que tenemos unas galerías de imágenes de alta calidad y que varias páginas webs nos copian los links de las imágenes para así publicarlas en sus webs. El tráfico consumido para mostrar estas imágenes en una web de un tercero es generado por nosotros ya que el link utilizado apunta a nuestro servidor.
Para evitar que esto ocurra vamos a utilizar el fichero “.htaccess” donde con la ayuda del módulo “mod_rewrite” vamos a evitar que puedan utilizar nuestras imágenes. Para ello crearemos el fichero “.htaccess” en el directorio raíz e incluiremos el siguiente código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| <IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://www.google.es/reader/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.google.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.google.es/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://maps.google.es.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://maps.google.com.*$ [NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ http://www.mipaginaweb.es/NoHotLink.gif [R,NC,L]
</IfModule> |
Una vez tenemos insertado el código cualquier enlace referente a un fichero .jpg, .jpeg, .gif, .png o .bmp que no sea procedente de google.com, google.es, maps.google.es o maps.google.com será redirigido a la dirección http://www.mipaginaweb.es/NoHotLink.gif que será la imagen por defecto a mostrar.
Vamos a explicar con más detalle función realiza cada línea, con “RewriteCond” escribimos la condición que debe cumplir para que sea redirigido a la imagen que utilizaremos para evitar el Hot-Link.
Por ejemplo la linea
“RewriteCond %{HTTP_REFERER} !^http://www.google.com/.*$ [NC]”
Utilizamos el símbolo “!” que es la negación por lo que todas las peticiones distintas del dominio http://www.google.com/ serán redirigidas para evitar el Hot-Link.
¿Dónde redirigimos las peticiones que no aceptamos? Esto es configurado con la línea
“RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ http://www.mipaginaweb.es/NoHotLink.gif [R,NC,L]”
Donde indicamos el tipo de fichero (jpg,jpeg,gif,png y bmp) y también indicamos la URL donde vamos a redirigir las peticiones no deseadas (http://www.mipaginaweb.es/NoHotLink.gif)
Por último indicar que es aconsejable que la imagen que utilicemos para redirigir las peticiones no deseadas contenga el nombre de nuestro dominio para que así los visitantes puedan entrar en nuestra página web.
Jose Joaquin Antón
AS Abserver DataCenter