# Bloquear o permitir URLs en Safari

> Controla qué sitios web pueden visitar tus usuarios en Safari en dispositivos iOS y iPadOS supervisados, usando listas de URLs permitidas y denegadas.

Source: https://docs.applivery.com/es/device-management/apple/ios-ipados/policies/web-content-filter/  •  Last updated: 2026-08-08

---

A veces hay que decidir de forma centralizada a qué sitios web puede acceder un dispositivo: un iPad compartido en una tienda que solo debería abrir dos herramientas internas, o un parque en el que un puñado de sitios sencillamente no deberían ser accesibles. La configuración de **Filtro de contenido web** es donde se hace.

Te da dos listas: sitios que siempre permites y sitios que siempre bloqueas. Detrás de ellas, las reglas de coincidencia son menos literales de lo que parecen, y de ahí vienen casi todas las sorpresas.

## Requisitos previos

-   El dispositivo está **supervisado**. El filtrado de contenido web a nivel de sistema en iOS e iPadOS, Safari incluido, solo funciona en dispositivos supervisados.
    
-   La política está correctamente asignada a los dispositivos de destino.
    

## Configuración

**Navegar a Políticas**

Una vez en el [**panel de Applivery**](https://dashboard.applivery.io), dirígete a la **política** 1 que quieras modificar. En el menú lateral izquierdo, selecciona **\+ Añadir configuración** y elige **Filtro de contenidos web** 2.

![web content filter](https://docs.applivery.com/int/_r2/media/09ac0a4e-3ad8-478f-9f15-3474973eec71/6665d3bf-dc52-45af-942d-27b27858c74b.png)

**Rellenar las listas**

Añade a la lista de denegadas los sitios que quieras bloquear, a la de permitidas los que quieras que estén siempre accesibles, o ambas cosas.

Una vez aplicada, un dispositivo que intente abrir un sitio bloqueado no falla en silencio: Safari muestra el mensaje **Sitio web bloqueado**.

### Qué puedes definir

<table style="min-width: 50px;"><colgroup><col style="min-width: 25px;"><col style="min-width: 25px;"></colgroup><tbody><tr><th colspan="1" rowspan="1"><p>Ajuste</p></th><th colspan="1" rowspan="1"><p>Qué hace</p></th></tr><tr><td colspan="1" rowspan="1"><p><strong>Filtrado automático</strong></p></td><td colspan="1" rowspan="1"><p>El filtro integrado de Apple, que bloquea contenido adulto automáticamente. <strong>Necesario si quieres usar la lista de permitidas.</strong></p></td></tr><tr><td colspan="1" rowspan="1"><p><strong>URLs permitidas</strong></p></td><td colspan="1" rowspan="1"><p>Sitios accesibles aunque el filtro automático los considerara contenido adulto. Si la dejas vacía, es accesible todo sitio no adulto salvo los que hayas denegado.</p></td></tr><tr><td colspan="1" rowspan="1"><p><strong>URLs denegadas</strong></p></td><td colspan="1" rowspan="1"><p>Sitios que nunca son accesibles, aunque el filtro automático los considere correctos. Mantén esta lista en <strong>no más de 500 URLs</strong>.</p></td></tr><tr><td colspan="1" rowspan="1"><p><strong>Ocultar URLs denegadas</strong></p></td><td colspan="1" rowspan="1"><p>Desde iOS 18, oculta la lista de denegadas del perfil que se muestra en <strong>Ajustes → General → VPN y gestión de dispositivos</strong>.</p></td></tr><tr><td colspan="1" rowspan="1"><p><strong>Plug-in</strong></p></td><td colspan="1" rowspan="1"><p>Cede el filtrado a un filtro de terceros en lugar del integrado de Apple.</p></td></tr></tbody></table>

:::info
**La lista de permitidas solo funciona con el filtrado automático activado.** Apple ata las dos cosas: si el filtrado automático está desactivado, las URLs permitidas no tienen ninguna regla a la que hacer excepción, y la lista no hace nada.
:::
:::info
`*.apple.com` **y** `*.icloud.com` **son siempre accesibles**, los incluyas o no. No pierdas tiempo intentando bloquearlos.
:::

## Cómo se comparan las URLs

Esta es la parte que conviene leer dos veces, porque el filtro no compara las URLs como esperarías.

**Incluye el esquema.** Las entradas necesitan `https://` o `http://`. Si un sitio responde en ambos, añade una entrada para cada uno.

**La coincidencia es por subcadena.** Una URL coincide con una entrada si los caracteres exactos de esa entrada aparecen en cualquier parte de la URL solicitada. Por eso bloquear `ejemplo.com/a` bloquea también `ejemplo.com/apple`, `ejemplo.com/about` y `ejemplo.com/a/b`.

:::warning
**El prefijo** `www` **se descarta antes de comparar, y las consecuencias son más amplias de lo que parece.** Bloquear `www.ejemplo.com` deja `ejemplo.com` como patrón, que a su vez coincide con `m.ejemplo.com`.

Es decir, una regla que escribiste para un único host puede acabar cubriendo subdominios móviles y cualquier otra cosa que contenga esa cadena. Comprueba qué más atrapa tu entrada antes de desplegarla.
:::

**Un subdominio no cubre el dominio principal.** Bloquear `blog.ejemplo.com` deja `ejemplo.com` accesible. Si quieres los dos, añade los dos.

**Las barras finales se comparan de forma explícita.** Una entrada que termina en `/`, como `ejemplo.com/a/`, cubre `ejemplo.com/a` y `ejemplo.com/a/b`.

**Las redirecciones no se siguen.** Si una URL bloqueada redirige a otra, el destino tiene que estar también en la lista; si no, la redirección pasa.

### Ejemplos

<table style="min-width: 75px;"><colgroup><col style="min-width: 25px;"><col style="min-width: 25px;"><col style="min-width: 25px;"></colgroup><tbody><tr><th colspan="1" rowspan="1"><p>Objetivo</p></th><th colspan="1" rowspan="1"><p>Entrada</p></th><th colspan="1" rowspan="1"><p>Resultado</p></th></tr><tr><td colspan="1" rowspan="1"><p>Bloquear un dominio completo, subrutas incluidas</p></td><td colspan="1" rowspan="1"><p><code>https://ejemplo.com/</code></p></td><td colspan="1" rowspan="1"><p>Bloquea <code>ejemplo.com</code> y todo lo que cuelgue de él</p></td></tr><tr><td colspan="1" rowspan="1"><p>Bloquear un prefijo de ruta</p></td><td colspan="1" rowspan="1"><p><code>https://ejemplo.com/a</code></p></td><td colspan="1" rowspan="1"><p>Bloquea <code>ejemplo.com/a</code>, <code>ejemplo.com/apple</code>, <code>ejemplo.com/a/b</code> — pero no el dominio principal</p></td></tr><tr><td colspan="1" rowspan="1"><p>Bloquear una ruta de forma explícita</p></td><td colspan="1" rowspan="1"><p><code>https://ejemplo.com/a/</code></p></td><td colspan="1" rowspan="1"><p>Bloquea <code>ejemplo.com/a</code> y <code>ejemplo.com/a/b</code></p></td></tr><tr><td colspan="1" rowspan="1"><p>Permitir solo un conjunto de sitios</p></td><td colspan="1" rowspan="1"><p>Filtrado automático activado + los sitios en la lista de permitidas</p></td><td colspan="1" rowspan="1"><p>Esos sitios son siempre accesibles</p></td></tr></tbody></table>

## Cuando se aplican varias políticas

Todas las reglas de filtrado están activas a la vez, y un sitio tiene que **superarlas todas** para ser accesible. En la práctica eso significa que las restricciones se suman en lugar de sustituirse: si cualquier política aplicada deniega un sitio, queda denegado.

Si un sitio que esperas que funcione aparece bloqueado, revisa **todas** las políticas asignadas al dispositivo, no solo la que editaste.

## Consideraciones importantes

-   **Un sitio bloqueado sigue siendo accesible desde su app.** Si una red social está en la lista de denegadas pero su app está instalada, el usuario continúa como si nada: el filtro solo cubre el tráfico web. Para cerrar ese hueco, bloquea también la app, como se explica en [Bloquear y permitir apps](https://docs.applivery.com/es/device-management/apple/app-management/block-allow-apps/).
    
-   **El filtro cubre Safari y WebKit.** Los navegadores de terceros que no usan WebKit, y el tráfico que generan las apps, quedan fuera. Para eso necesitas un filtro por plug-in o un control a nivel de red, como un proxy HTTP global o DNS filtrado.
    
-   **Activar el filtro deshabilita borrar el historial de Safari.** Es un efecto colateral documentado por Apple, no un fallo. Desde iOS 26 existe un ajuste explícito para ello, que además impide la navegación privada, porque ese modo no guarda historial que retener.
    
-   **El usuario no puede cambiar nada de esto en el dispositivo** mientras el perfil esté instalado.
    
-   **No es un filtro de grado normativo.** Para requisitos regulatorios estrictos, o para cubrir más allá de Safari, combínalo con un proxy HTTP global, DNS filtrado o un filtro de terceros mediante la opción de plug-in.
    

## Dispositivos no supervisados y personales

El filtro integrado necesita supervisión, así que no está disponible en dispositivos no supervisados ni inscritos por usuario. La vía ahí es la opción de **plug-in** con un filtro de terceros, que requiere un **UUID de filtro de contenido**: Apple hace obligatorio ese identificador precisamente para dispositivos no supervisados y User Enrollment, desde iOS 16. Las apps gestionadas que lleven el mismo UUID comparten el filtro.

## Resolución de problemas

<table style="min-width: 75px;"><colgroup><col style="min-width: 25px;"><col style="min-width: 25px;"><col style="min-width: 25px;"></colgroup><tbody><tr><th colspan="1" rowspan="1"><p>Síntoma</p></th><th colspan="1" rowspan="1"><p>Causa probable</p></th><th colspan="1" rowspan="1"><p>Qué revisar</p></th></tr><tr><td colspan="1" rowspan="1"><p>Una URL bloqueada sigue siendo accesible</p></td><td colspan="1" rowspan="1"><p>El usuario entra por la app nativa, o una redirección acaba en una URL que no está en la lista</p></td><td colspan="1" rowspan="1"><p>Bloquea también la app; añade el destino de la redirección a la lista</p></td></tr><tr><td colspan="1" rowspan="1"><p>El perfil no se instala</p></td><td colspan="1" rowspan="1"><p>El dispositivo no está supervisado, o a un filtro por plug-in le faltan identificadores</p></td><td colspan="1" rowspan="1"><p>Confirma la supervisión; revisa el UUID del filtro de contenido</p></td></tr><tr><td colspan="1" rowspan="1"><p>Un sitio permitido sigue bloqueado</p></td><td colspan="1" rowspan="1"><p>Hay una entrada contradictoria en una lista de denegadas, posiblemente de otra política</p></td><td colspan="1" rowspan="1"><p>Revisa todas las políticas aplicadas al dispositivo; gana la denegada</p></td></tr><tr><td colspan="1" rowspan="1"><p>La lista de permitidas no surte efecto</p></td><td colspan="1" rowspan="1"><p>El filtrado automático está desactivado</p></td><td colspan="1" rowspan="1"><p>Activa el filtrado automático; la lista de permitidas depende de él</p></td></tr><tr><td colspan="1" rowspan="1"><p>El filtrado no cubre otros navegadores ni el tráfico de apps</p></td><td colspan="1" rowspan="1"><p>Es lo esperado: el filtro integrado cubre Safari y WebKit</p></td><td colspan="1" rowspan="1"><p>Valora un filtro por plug-in o un proxy HTTP global</p></td></tr></tbody></table>
