GOPROXY در برابر HTTP_PROXY: منبع ماژول و پراکسی فوروارد
انتخاب منبع ماژول توسط Go را از مسیر پراکسی فورواردی که برای رسیدن به آن منبع استفاده میشود جدا نگه دارید.
GOPROXY سرویس دانلود ماژول Go را انتخاب میکند. HTTP_PROXY و HTTPS_PROXY واسط شبکهای مورد استفاده برای رسیدن به مقصد را انتخاب میکنند. پراکسی عمومی HTTP معمولاً API فراداده و فایل سرویس ماژول را پیادهسازی نمیکند.
سیاست منبع ماژول
go env GOPROXY GOPRIVATE GONOPROXY
این مقادیر توضیح میدهند Go ماژولها را از کجا میگیرد. GONOPROXY مسیرهای ماژولی را انتخاب میکند که از سرویس ماژول عبور نمیکنند. به همین ترتیب، GOPROXY=direct دسترسی کنترل نسخه را برای ماژولها درخواست میکند؛ متغیرهای پراکسی HTTP را برای هر اتصال غیرفعال نمیکند.
مسیر شبکه
یک فراخوانی از shell پازیکس میتواند مستقل از منبع ماژول، پراکسی فوروارد فراهم کند:
HTTPS_PROXY=http://203.0.113.10:8080 go mod download
نقطهٔ پایانی مستندات را جایگزین کنید و مقدار موردنظر GOPROXY را نگه دارید. برای دانلود ماژولهای عمومی که اجازهٔ استفاده از پراکسیهای عمومی HTTP دارند، از فهرست پراکسی HTTP یک گزینه انتخاب کنید. برای مقصدهای انتقال HTTP که باید مستقیم بمانند، از NO_PROXY استفاده کنید.
بسته به سیاست ماژول، دانلود ممکن است با سرویس ماژول، سرویس checksum، میزبان artifact یا سرور کنترل نسخه تماس بگیرد. هنگام شکست درخواست، هم منبع انتخابشده توسط Go و هم مسیر رسیدن به آن میزبان را مشخص کنید. پرسوجوی go env بهتنهایی همهٔ متغیرهای محیطی پراکسی را نشان نمیدهد و ثابت نمیکند دانلود کدام اتصال را باز کرده است.