GOPROXY বনাম HTTP_PROXY: মডিউল উৎস ও ফরোয়ার্ড প্রক্সি
Go যে মডিউল উৎস বেছে নেয়, সেই উৎসে পৌঁছানোর জন্য ব্যবহৃত ফরোয়ার্ড প্রক্সি রুট থেকে সেটিকে আলাদা রাখুন।
GOPROXY একটি Go module download service নির্বাচন করে। HTTP_PROXY এবং HTTPS_PROXY কোনো গন্তব্যে পৌঁছাতে ব্যবহৃত network intermediary নির্বাচন করে। সাধারণ HTTP proxy সাধারণত module service-এর metadata ও file API বাস্তবায়ন করে না।
মডিউল-উৎস নীতি
go env GOPROXY GOPRIVATE GONOPROXY
এই মানগুলো Go কোথা থেকে মডিউল পায় তা বর্ণনা করে। GONOPROXY module service এড়িয়ে যাওয়া module path নির্বাচন করে। একইভাবে GOPROXY=direct মডিউলের জন্য version-control access চায়; এটি প্রতিটি connection-এর HTTP proxy variable বন্ধ করে না।
নেটওয়ার্ক রুট
POSIX shell invocation module source থেকে স্বাধীনভাবে একটি forward proxy দিতে পারে:
HTTPS_PROXY=http://203.0.113.10:8080 go mod download
ডকুমেন্টেশনের endpoint বদলে নির্ধারিত GOPROXY value রাখুন। Public HTTP proxy ব্যবহারের অনুমতি থাকা public module download-এর জন্য HTTP proxy list থেকে একটি candidate নিন। যে HTTP transport destination সরাসরি থাকা উচিত, তার জন্য NO_PROXY ব্যবহার করুন।
Module policy অনুযায়ী download module service, checksum service, artifact host বা version-control server-এ যোগাযোগ করতে পারে। কোনো request ব্যর্থ হলে Go নির্বাচিত source এবং নির্দিষ্ট host-এ পৌঁছানোর route দুটিই শনাক্ত করুন। শুধু go env query সব proxy environment variable দেখায় না এবং download কোন connection খুলেছে তা প্রমাণ করে না।