Prevenir el enlace directo de imágenes (hotlinking)

Generalidades

La vinculación activa o el robo de ancho de banda es un problema común. Ocurre cuando las personas se vinculan a archivos e imágenes en un servidor diferente y los muestran en su propio sitio web; esto usa el ancho de banda del propietario original a su cargo.

Crear un archivo .htaccess en tu servidor web DreamHost

Consulta el siguiente artículo para obtener instrucciones sobre cómo crear un archivo .htaccess en tu servidor web:

Si el archivo ya existe, consulta los siguientes artículos para obtener instrucciones sobre cómo actualizarlo (dependiendo de si estás utilizando un cliente FTP o SSH):

¿Qué cambiar en los ejemplos siguientes?

Los ejemplos a continuación se pueden ingresar en tu archivo .htaccess exactamente como se muestra.

Solo si el ejemplo contiene una URL en negrita, debes cambiarla a tu URL real. Por ejemplo, si ves el dominio example.com, cámbialo a tu propio nombre de dominio.

Los siguientes ejemplos usan http. Si has agregado un certificado SSL a tu sitio, asegúrate de ajustar el código para usar https en su lugar.

Agregar código a tu archivo .htaccess

Al ingresar las siguientes líneas a un archivo .htaccess, puedes prevenir el enlace directo de imágenes a tu sitio web:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?example.com/.*$ [NC] 
RewriteRule \.(gif|jpg)$ http://www.example.com/hotlink.gif [R,L]

En el ejemplo anterior, cambia example.com por la URL de tu sitio web. Esto hace que no se cargue ninguna imagen vinculada. Puedes cambiar la última línea para que apunte a cualquier imagen que desees. Esta imagen debería explicar que los enlaces activos están deshabilitados en tu servidor.

Aquí hay otro ejemplo:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://example.com.*$ [NC] 
RewriteCond %{HTTP_REFERER} !^http://www.example.com.*$ [NC] 
RewriteRule .*\.(gif|jpg|jpeg|bmp)$ http://www.example.com/stophotlinking.jpg [R,NC] 

Puedes cambiar la última línea para que apunte a cualquier imagen que desees. Esta imagen debería explicar que los enlaces activos están deshabilitados en tu servidor.

Si no deseas adoptar el enfoque manual, puedes evitar el enlace directo de imágenes habilitándolo en el panel. Para habilitarlo, ve a la página Htaccess/WebDAV. Haz clic en tu dominio y continúa con los pasos para habilitar esta función.

Bloquear dominios específicos

El siguiente código no puede cargar un archivo vinculado, pero no se genera ningún error. Por lo tanto, si el sitio example.com contiene una imagen vinculada a tu sitio, no se cargará en tu sitio:

RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http://(www\.)?example\.com(/.*)*$ [NC,OR]
RewriteRule \.(jpeg|JPEG|jpe|JPE|jpg|JPG|gif|GIF|png|PNG|mng|MNG)$ - [F]

Para proteger otros recursos, como archivos de video y audio, agrega extensiones adicionales al bloque de paréntesis RewriteRule.

Permitir solo dominios específicos

El siguiente código solo permite que sitios específicos carguen contenido. Por ejemplo, el sitio example.com tiene todo el contenido. El siguiente código permite que solo example.com y dreamhost.com carguen el contenido. Todos los demás sitios que intentan solicitar cualquier recurso no pueden cargar el recurso, pero no se generan errores:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?dreamhost\.com(/.*)*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?example\.com(/.*)*$ [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteRule \.(jpeg|gif|png)$ - [F]

Además, dado que un agente de usuario no siempre puede especificar un valor HTTP_REFERER, la línea RewriteCond %{HTTP_REFERER} !^$ permite que la solicitud pase si el valor HTTP_REFERER consta de una cadena en blanco.

Para obtener más ejemplos sobre cómo bloquear el tráfico por IP o dominio, consulta el artículo Negar el acceso.

Ver también

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?