• Categoría de la entrada:Apache
  • Tiempo de lectura:4 minutos de lectura

En este artículo te muestro el bloqueo de países desde .htaccess. A partir de las ultimas versiones de Apache este trae la funcionalidad de reconocimiento de códigos ISO ISO 3166-1. Cpn esto vamos a poder bloquear visitas de países muy fácilmente.

bloqueo de países desde .htaccess

Bloquear países en .htaccess

Antes que nada tienes que tener los código ISO de los países que quieres bloquear. Puedes revisar este artículo para obtenerlos, para este caso utilizaremos los códigos de la columna Código alfa-2 de dos letras:

Como ejemplo tomaremos China, que se identifica con el código «CN«.

En el archivo .htaccess debes agregar lo siguiente:

# Bloqueo de paises
SetEnvIf CF-IPCountry CN BuzzOff=1
Order allow,deny
Allow from all
Deny from env=BuzzOff

Guarda, cierra y reinicia el servidor para que este tome los cambios.

Puedes bloquear varios paises poniendo tantas líneas como países quieras con su código ISO correspondiente.

  1. Rusia
  2. China
  3. Kazajistán
  4. República Checa

Ejemplo:

# Bloqueo de paises
SetEnvIf CF-IPCountry RU BuzzOff=1
SetEnvIf CF-IPCountry CN BuzzOff=1
SetEnvIf CF-IPCountry KZ BuzzOff=1
SetEnvIf CF-IPCountry CZ BuzzOff=1
Order allow,deny
Allow from all
Deny from env=BuzzOff

Esta entrada tiene 4 comentarios

  1. walter

    Buen día,se puede hacer un archivo .htaccess,que deje entrar solamente ip de argentina en mi web ? pregunto,para no hacer un archivo tan largo para todas las ip de cantidad de paises que existen,o sea,un archivo que permita solamente la entrada desde Argentina,desde ya muchas gracias

    1. Programador -

      Hola la regla deberia ser algo asi:

      SetEnvIf CF-IPCountry AR BuzzOff=1
      order allow,deny
      Allow from env=BuzzOff
      Deny from all

      Saludos

  2. Antonio

    Que buen aporte, gracias.

    Sumo una consulta: si se aplica una regla general para bloquear a todos los países excepto a Argentina, ¿cómo sería posible configurar excepciones para servicios del exterior como CLOUDFLARE, o bien algún otro servicio?

    Gracias de antemanop

  3. JULIAN

    Hola necesito que mi web solo la vean en colombia y ecuador, lo hago asi y se queda cargado

    SetEnvIf CF-IPCountry CO BuzzOff=1
    SetEnvIf CF-IPCountry EC BuzzOff=1
    order allow,deny
    Allow from env=BuzzOff
    Deny from all

Deja una respuesta