La argumento BypassList de System.Net.WebProxy enhavas regulajn esprimojn. Ŝablono kiel *.office.example estas malvalida, ĉar la komenca stelo ne havas antaŭan esprimon por ripeti.

Por HTTP- kaj HTTPS-petoj al office.example kaj ĝiaj subdomajnoj, PowerShell-agordo povas uzi:

$bypass = @('^https?://([a-z0-9-]+\.)*office\.example(:[0-9]+)?$')
$proxy = [System.Net.WebProxy]::new(
    'http://proxy.example:8080',
    $false,
    [string[]]$bypass
)

La eskapigitaj punktoj kongruas kun laŭlitere punktoj. La ripetita grupo de gastignoma etikedo permesas kaj la bazan domajnon kaj nomojn sub ĝi. La ankroj tenas nomon kiel office.example.other.test ekster ĉi tiu regulo. PowerShell-ĉenoj en unuoblaj citiloj konservas la malantajn deklivajn strekojn uzatajn de la esprimo.

La nuna .NET-realigo kongruas ĉi tiujn esprimojn kun la skemo, gastignomo kaj ne-defaŭta pordo de la celo. Ĝi ne inkluzivas la petan vojon aŭ la petan ĉenon. Tial la nedeviga pordogrupo permesas ankaŭ ne-defaŭtajn pordojn; forigu aŭ mallarĝigu ĝin se la politiko postulas specifan servon.

BypassProxyOnLocal estas false en ĉi tiu ekzemplo, por ke la regula-esprima politiko povu esti inspektata aparte de tiu aldona preteriga agordo. Alkroĉu la rezultan prokuran objekton al la HTTP-kliento, kiu devas uzi ĝin. Por permesita publika URL-testo ekster la preteriga domajno, HTTP-ero el la HTTP proxy list povas provizi sian adreson, sen agordita prokura konto.

Uzu IsBypassed kun reprezentaj Uri-valoroj por inspekti la enkursigadan decidon: la baza domajno, unu subdomajno, nekoncerna ekstera gastiganto kaj trompa pli longa sufikso. Rezulto true signifas, ke rekta aliro estis elektita; ĝi ne pruvas, ke la rekta celo estas atingebla.

Rilataj artikoloj