GOPROXY بمقابلہ HTTP_PROXY: ماڈیول ماخذ اور فارورڈ پراکسی
Go کے منتخب کردہ ماڈیول ماخذ کو اس ماخذ تک پہنچنے کے لیے استعمال ہونے والے فارورڈ پراکسی راستے سے الگ رکھیں۔
GOPROXY Go کی ماڈیول ڈاؤن لوڈ سروس منتخب کرتا ہے۔ HTTP_PROXY اور HTTPS_PROXY منزل تک پہنچنے کے لیے نیٹ ورک واسطہ منتخب کرتے ہیں۔ عام HTTP پراکسی عموماً ماڈیول سروس کے metadata اور file API نافذ نہیں کرتی۔
ماڈیول ماخذ کی پالیسی
go env GOPROXY GOPRIVATE GONOPROXY
یہ اقدار بتاتی ہیں کہ Go ماڈیول کہاں سے حاصل کرتا ہے۔ GONOPROXY ایسے ماڈیول راستے منتخب کرتا ہے جو ماڈیول سروس کو bypass کرتے ہیں۔ اسی طرح GOPROXY=direct ماڈیولز کے لیے version-control access مانگتا ہے؛ یہ ہر connection کے لیے HTTP proxy variables بند نہیں کرتا۔
نیٹ ورک راستہ
POSIX shell invocation ماڈیول ماخذ سے الگ فارورڈ پراکسی فراہم کر سکتی ہے:
HTTPS_PROXY=http://203.0.113.10:8080 go mod download
دستاویزی endpoint تبدیل کریں اور مطلوبہ GOPROXY value برقرار رکھیں۔ جن public module downloads کو public HTTP proxies استعمال کرنے کی اجازت ہے، ان کے لیے HTTP proxy list سے candidate منتخب کریں۔ جن HTTP transport destinations کو direct رہنا چاہیے، ان کے لیے NO_PROXY استعمال کریں۔
ماڈیول پالیسی کے مطابق downloads module service، checksum service، artifact host یا version-control server سے رابطہ کر سکتے ہیں۔ Request ناکام ہو تو Go کے منتخب source اور اس host تک پہنچنے والے route دونوں کی شناخت کریں۔ صرف go env query تمام proxy environment variables نہیں دکھاتی اور یہ ثابت نہیں کرتی کہ download نے کون سا connection کھولا۔