Referencia de sintaxis de UrlList

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 reutilizar en varias reglas.

La sintaxis UrlList admite dominios coincidentes completos o por sufijo, y URLs con ruta de acceso completa sin parámetros o una ruta de acceso con prefijo.

Comodines admitidos

UrlList admite el carácter comodín de asterisco *, que puedes usar como prefijo para hacer coincidir subdominios o rutas parciales.

Cuando proporcionas dominios parciales, UrlList solo coincide con tokens de subdominios completos. Si no se proporciona un separador de ruta, UrlList coincide con cualquier ruta. Por ejemplo, si proporcionas example.com, UrlList coincide con example.com/*, incluidas todas las rutas de acceso del dominio.

Cómo interpreta UrlList las entradas

El proxy web seguro usa los patrones UrlList que proporcionas para hacer coincidir las URLs y, luego, determinar si la URL está permitida o no.

UrlList interpreta las entradas de la siguiente manera:

  • Las entradas que contienen un punto (.) y una barra diagonal (/) deben ser URLs bien formadas. Puedes incluir comodines de subdominio y ruta. El token a la izquierda del primer carácter / se interpreta como el dominio de nivel superior, como .com en google.com/news.

  • Las entradas que contienen un punto (.) y que no contienen una barra diagonal (/) se interpretan como dominios. Puedes incluir el comodín de subdominio. En este caso, el token de la derecha se interpreta como el dominio de nivel superior, como .xyz en abc.xyz.

  • Todas las demás entradas no son válidas.

Cuando un patrón UrlList coincide con valores que contienen una barra diagonal (/), como en request.url(), los patrones se interpretan como se explicó anteriormente. Sin embargo, cuando un patrón UrlList coincide con valores sin un /, como en host(), solo se encuentra la coincidencia de la parte de 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 Coincidencias 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/