System.Net.WebProxy चा BypassList वितर्क नियमित अभिव्यक्ती धारण करतो. *.office.example सारखा नमुना अवैध आहे कारण सुरुवातीच्या तारक्याकडे पुनरावृत्ती करण्यासाठी पूर्वीची अभिव्यक्ती नाही.

office.example आणि त्याच्या उपडोमेनवरील HTTP व HTTPS विनंत्यांसाठी, PowerShell संरचना हे वापरू शकते:

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

एस्केप केलेले ठिपके शब्दशः ठिपक्यांशी जुळतात. पुनरावृत्ती होणारा होस्टनाव-लेबल गट आधार डोमेन आणि त्याखालील नावे दोन्हीला परवानगी देतो. अँकर office.example.other.test सारखे नाव या नियमाबाहेर ठेवतात. एकेरी अवतरणातील PowerShell स्ट्रिंग अभिव्यक्ती वापरत असलेल्या बॅकस्लॅश जपतात.

सध्याची .NET अंमलबजावणी या अभिव्यक्तींची गंतव्यस्थानाच्या स्कीम, होस्टनाव आणि गैर-डीफॉल्ट पोर्टशी जुळणी करते. त्यात विनंतीचा मार्ग किंवा क्वेरी स्ट्रिंग समाविष्ट नाही. म्हणून ऐच्छिक पोर्ट गट गैर-डीफॉल्ट पोर्टलाही परवानगी देतो; धोरणास विशिष्ट सेवा हवी असल्यास तो काढा किंवा अरुंद करा.

या उदाहरणात BypassProxyOnLocal false आहे, जेणेकरून regex धोरण त्या अतिरिक्त बायपास सेटिंगपासून वेगळे तपासता येईल. तयार झालेली प्रॉक्सी वस्तू ती वापरणाऱ्या HTTP क्लायंटला जोडा. बायपास डोमेनबाहेरील अनुमत सार्वजनिक URL चाचणीसाठी, HTTP proxy list मधील HTTP नोंद तिचा पत्ता देऊ शकते, प्रॉक्सी खाते संरचित न करता.

मार्गनिर्णय तपासण्यासाठी प्रतिनिधी Uri मूल्यांसह IsBypassed वापरा: आधार डोमेन, एक उपडोमेन, असंबंधित बाह्य होस्ट आणि भ्रमित करणारा मोठा प्रत्यय. true निकालाचा अर्थ थेट प्रवेश निवडला गेला; तो थेट गंतव्यस्थान पोहोचण्यायोग्य असल्याचे सिद्ध करत नाही.

संबंधित लेख