Domini padre e sottodomini in .NET NO_PROXY
Includi deliberatamente il dominio padre quando una politica proxy di ambiente .NET deve bypassare anche i suoi sottodomini.
Nelle regole proxy di ambiente documentate di .NET, .example.com corrisponde ai sottodomini. Non corrisponde a example.com stesso. Questa piccola distinzione può dividere un servizio su due percorsi.
| Voce | Corrispondenza .NET prevista |
|---|---|
example.com | Il nome host padre |
.example.com | Nomi host sotto quel dominio |
example.com,.example.com | Entrambi i gruppi |
Supponiamo che la pagina di destinazione usi il nome padre e che la sua API usi api.example.com. Un elenco che contiene solo la forma con punto può inviare la pagina di destinazione attraverso il proxy mentre l'API va diretta. L'errore inverso è elencare solo il dominio padre e aspettarsi che ogni figlio corrisponda. Ispeziona HttpClient.DefaultProxy.IsBypassed per il dominio padre e un figlio per verificare la decisione configurata.
Questo vale per la politica di ambiente usata dal client HTTP .NET partecipante. Un IWebProxy assegnato esplicitamente, un'altra implementazione di handler o un'altra generazione di runtime richiede la verifica delle proprie regole. Non dare per scontato che la lista di bypass di un browser sia diventata questa lista di ambiente.
Resisti anche all'abitudine di tradurre l'impostazione in *.example.com. La sintassi di ambiente .NET documentata non tratta l'asterisco come un carattere jolly generale.
Quando confronti un comando curl funzionante con l'applicazione, conserva l'URL letterale nel rapporto. “Stesso server” nasconde se hai richiesto il dominio padre, un sottodominio o un indirizzo IP. La corrispondenza del dominio avviene rispetto a quell'input della richiesta, non rispetto al tuo nome informale del servizio.