Riferimento alla sintassi di UrlList

Questa guida spiega la sintassi UrlList per Secure Web Proxy.

UrlList ti consente di creare molte voci di corrispondenza che puoi riutilizzare in più regole.

La sintassi UrlList supporta la corrispondenza dei domini per intero o per suffisso e gli URL con percorso completo senza parametri o con un percorso di prefisso.

Caratteri jolly supportati

UrlList supporta il carattere jolly asterisco *, che puoi utilizzare come prefisso per trovare corrispondenze con sottodomini o percorsi parziali.

Quando fornisci domini parziali, UrlList corrisponde solo ai token del sottodominio completo. Se non viene fornito un separatore di percorso, UrlList corrisponde a qualsiasi percorso. Ad esempio, se fornisci example.com, UrlList corrisponde a example.com/*, inclusi tutti i percorsi nel dominio.

Come UrlList interpreta le voci

Il proxy web sicuro utilizza i pattern UrlList che fornisci per trovare corrispondenze negli URL e determinare se l'URL è consentito o meno.

UrlList interpreta le voci in base a quanto segue:

  • Le voci che contengono un punto (.) e una barra (/) devono essere URL ben formattati. Puoi includere caratteri jolly per sottodomini e percorsi. Il token a sinistra del primo carattere / viene interpretato come dominio di primo livello, ad esempio .com in google.com/news.

  • Le voci che contengono un punto (.) e che non contengono una barra (/) vengono interpretate come domini. Puoi includere il carattere jolly per i sottodomini. In questo caso, il token più a destra viene interpretato come dominio di primo livello, ad esempio .xyz in abc.xyz.

  • Tutte le altre voci non sono valide.

Quando un pattern UrlList viene abbinato a valori contenenti una barra (/), ad esempio in request.url(), i pattern vengono interpretati come spiegato in precedenza. Tuttavia, quando un pattern UrlList viene abbinato a valori senza un /, ad esempio in host(), viene abbinata solo la parte di dominio del pattern.

Esempi di corrispondenza di pattern

La tabella riportata di seguito mostra i pattern di esempio, gli URL di esempio corrispondenti a ogni pattern e gli URL di esempio che non corrispondono.

Pattern Corrisponde a Non corrisponde
*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/