En esta guía, se explica la sintaxis de UrlList
para el proxy web seguro.
UrlList
te permite crear muchas entradas de coincidencia que puedes volver a usar en varias reglas.
La sintaxis de UrlList
admite la coincidencia de dominios completos o por sufijo, y URLs con rutas de acceso completas sin parámetros o con una ruta de acceso de prefijo.
Comodines admitidos
UrlList
admite el carácter comodín de asterisco *
, que puedes usar como prefijo para hacer coincidir subdominios o rutas de acceso parciales.
Cuando proporcionas dominios parciales, UrlList
solo coincide con tokens de subdominio completos. Si no se proporciona un separador de ruta de acceso, UrlList
coincidirá con cualquier ruta. Por ejemplo, si proporcionas example.com
, entonces UrlList
coincide con example.com/*
, incluidas todas las rutas de acceso en el dominio.
Cómo interpreta las entradas UrlList
El proxy web seguro usa los patrones UrlList
que proporcionas para buscar coincidencias con las URLs y, luego, determinar si la URL está permitida o no.
UrlList
interpreta las entradas de acuerdo con lo siguiente:
Las entradas que contienen un punto (
.
) y una barra diagonal (/
) deben ser URLs con el formato correcto. Puedes incluir comodines de subdominios y rutas de acceso. El token a la izquierda del primer carácter/
se interpreta como el dominio de nivel superior, como.com
engoogle.com/news
.Las entradas que contienen un punto (
.
) y que no contienen una barra diagonal (/
) se interpretan como dominios. Puede incluir el comodín de subdominio. En este caso, el token más a la derecha se interpreta como el dominio de nivel superior, como.xyz
enabc.xyz
.Las demás entradas no son válidas.
Cuando un patrón UrlList
se compara con valores que contienen una barra diagonal (/
), como en request.url()
, los patrones se interpretan como se explicó anteriormente. Sin embargo, cuando se compara un patrón UrlList
con valores sin un /
, como en host()
, solo se establece la coincidencia con la parte del dominio del patrón.
Ejemplos de coincidencia de patrones
En la siguiente tabla, se muestran patrones de ejemplo, URLs de ejemplo con las que coincide cada patrón, y URLs de ejemplo con las que no coinciden los patrones.
Patrón | Coinciden | No coincide |
---|---|---|
*example.com |
example.com/ server.example.com/ sample.server.example.com/ example.com/path example.com/path?q=query example.com/path/subpath sample.server.example.com/path/ |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com |
*.example.com |
server.example.com/ sample.server.example.com/ sample.server.example.com/path/ |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com example.com/ example.com/path example.com/path/subpath |
example.com |
example.com/ example.com/path example.com/path/subpath |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com server.example.com/ sample.server.example.com/ sample.server.example.com/path/ |
*server.example.com |
server.example.com/ sample.server.example.com/path sample.server.example.com/path/ |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com example.com/ example.com/path example.com/path/subpath |
*example.com/ |
example.com/ server.example.com/ sample.server.example.com/ |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com example.com/path/ example.com/path/subpath sample.server.example.com/path/ |
*example.com/path* |
example.com/path example.com/path/subpath sample.server.example.com/path/ |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com example.com/ server.example.com/ sample.server.com/ |
*example.com/path/* |
example.com/path/subpath sample.server.example.com/path/ |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com example.com/ server.example.com/ sample.server.example.com/ example.com/path |
*example.com/path/ |
sample.server.example.com/path/ | myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com example.com/ sample.example.com/ sample.server.example.com/ example.com/path example.com/path/subpath |
example.com/ |
example.com/ | myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com server.example.com/ sample.server.example.com/ example.com/path example.com/path/subpath sample.server.example.com/path/ |