پراکسی ہوسٹ نام اپنی ظاہری شکل میں بین الاقوامی حروف رکھ سکتا ہے۔ IDNA ASCII شکل کی توقع رکھنے والے کلائنٹ یا ریزولور کو وہ ہوسٹ نام تبدیل شدہ درکار ہوتا ہے، پورے URL کی کوئی من مانی فیصد-ایسکیپ شدہ نقل نہیں۔

PowerShell میں، .NET تبدیلی براہ راست پیش کرتا ہے:

$mapping = New-Object System.Globalization.IdnMapping
$asciiHost = $mapping.GetAscii($unicodeProxyHost)
$endpoint = New-Object System.UriBuilder
$endpoint.Scheme = 'http'
$endpoint.Host = $asciiHost
$endpoint.Port = 8080

$proxy = New-Object System.Net.WebProxy($endpoint.Uri)

unicodeProxyHost صرف ڈومین نام ہے۔ پورٹ اور اسکیم الگ رہتے ہیں۔ درخواست کرنے والے HTTP کلائنٹ پر حاصل شدہ پراکسی استعمال کریں۔

پہلے سے تجزیہ شدہ Uri کے لیے، IdnHost اس کی IDNA کے موافق ہوسٹ نام نمائندگی پیش کرتا ہے۔ پہلے سے انکوڈ شدہ لیبل کو بار بار انکوڈ کرنے کے بجائے اصل اینڈ پوائنٹ کا جائزہ لیں۔

حل کی خرابی میں پراکسی کے ہوسٹ نام کو منزل کے ہوسٹ نام سے الگ پہچانیں۔ ایک کو تبدیل کرنا دوسرے پر ہجے کی غلطی یا غائب DNS ریکارڈ درست نہیں کرتا۔ سرٹیفکیٹ شناخت کے لیے بھی مطلوبہ ہوسٹ نام رکھیں؛ اسے من مانی IP پتے سے بدلنا کنکشن کا دوسرا حصہ بدل دیتا ہے۔

متعلقہ مضامین