Domenii părinte și subdomenii în .NET NO_PROXY
Includeți domeniul părinte în mod deliberat când o politică de proxy de mediu .NET trebuie să ocolească și subdomeniile acestuia.
În regulile documentate de proxy de mediu din .NET, .example.com corespunde subdomeniilor. Nu corespunde cu example.com însuși. Această mică distincție poate împărți un serviciu în două rute.
| Intrare | Potrivirea .NET dorită |
|---|---|
example.com | Numele de gazdă părinte |
.example.com | Nume de gazdă sub acel domeniu |
example.com,.example.com | Ambele grupuri |
Să presupunem că pagina de destinație folosește numele părinte, iar API-ul ei folosește api.example.com. O listă care conține doar forma cu punct poate trimite pagina de destinație prin proxy, în timp ce API-ul merge direct. Greșeala inversă este să listați doar domeniul părinte și să vă așteptați ca fiecare copil să corespundă. Inspectați HttpClient.DefaultProxy.IsBypassed pentru domeniul părinte și un copil, pentru a verifica decizia configurată.
Acest lucru se aplică politicii de mediu folosite de clientul HTTP .NET participant. Un IWebProxy atribuit explicit, o altă implementare de handler sau o altă generație de runtime trebuie să își verifice propriile reguli. Nu presupuneți că lista de ocolire a unui browser a devenit această listă de mediu.
De asemenea, împotriviți-vă obiceiului de a traduce setarea în *.example.com. Sintaxa documentată de mediu .NET nu tratează asteriscul ca un wildcard general.
Când comparați o comandă curl funcțională cu aplicația, păstrați URL-ul literal în raport. “Același server” ascunde dacă ați cerut domeniul părinte, un subdomeniu sau o adresă IP. Potrivirea domeniului se face față de acea intrare a cererii, nu față de numele dumneavoastră informal al serviciului.