Übergeordnete Domains und Subdomains in .NET NO_PROXY
Die übergeordnete Domain gezielt aufnehmen, wenn eine .NET-Umgebungsproxy-Richtlinie auch ihre Subdomains umgehen soll.
In den dokumentierten Umgebungsproxy-Regeln von .NET trifft .example.com auf Subdomains zu. Es trifft nicht auf example.com selbst zu. Diese kleine Unterscheidung kann einen Dienst auf zwei Routen aufteilen.
| Eintrag | Beabsichtigte .NET-Übereinstimmung |
|---|---|
example.com | Der übergeordnete Hostname |
.example.com | Hostnamen unterhalb dieser Domain |
example.com,.example.com | Beide Gruppen |
Angenommen, die Landingpage verwendet den übergeordneten Namen und ihre API verwendet api.example.com. Eine Liste, die nur die Form mit Punkt enthält, kann die Landingpage über den Proxy schicken, während die API direkt geht. Der umgekehrte Fehler ist, nur die übergeordnete Domain zu listen und zu erwarten, dass jedes Kind passt. HttpClient.DefaultProxy.IsBypassed prüfen für die übergeordnete Domain und eine untergeordnete Domain, um die konfigurierte Entscheidung zu prüfen.
Dies gilt für die Umgebungsrichtlinie, die der beteiligte .NET-HTTP-Client verwendet. Ein explizit zugewiesenes IWebProxy, eine andere Handler-Implementierung oder eine andere Laufzeitgeneration muss eigene Regeln prüfen lassen. Gehen Sie nicht davon aus, dass die Bypass-Liste eines Browsers zu dieser Umgebungsliste geworden ist.
Widerstehen Sie auch der Gewohnheit, die Einstellung in *.example.com zu übersetzen. Die dokumentierte .NET-Umgebungssyntax behandelt das Sternchen nicht als allgemeinen Platzhalter.
Wenn Sie einen funktionierenden curl-Befehl mit der Anwendung vergleichen, behalten Sie die wörtliche URL im Bericht. „Derselbe Server“ verdeckt, ob Sie die übergeordnete Domain, eine Subdomain oder eine IP-Adresse angefordert haben. Der Domainabgleich erfolgt gegen diese Anfrageeingabe, nicht gegen Ihre informelle Bezeichnung für den Dienst.