GOPROXY와 HTTP_PROXY: 모듈 소스와 포워드 프록시
Go가 선택하는 모듈 소스와 그 소스에 도달할 때 사용하는 포워드 프록시 경로를 분리해서 관리하세요.
GOPROXY는 Go 모듈 다운로드 서비스를 선택합니다. HTTP_PROXY과 HTTPS_PROXY는 목적지에 도달하는 데 사용할 네트워크 중개자를 선택합니다. 일반 HTTP 프록시는 보통 모듈 서비스의 메타데이터 및 파일 API를 구현하지 않습니다.
모듈 소스 정책
go env GOPROXY GOPRIVATE GONOPROXY
이 값은 Go가 모듈을 어디에서 가져오는지 설명합니다. GONOPROXY는 모듈 서비스를 우회하는 모듈 경로를 선택합니다. 마찬가지로 GOPROXY=direct는 모듈에 대한 버전 관리 접근을 요청하지만 모든 연결에서 HTTP 프록시 변수를 비활성화하지는 않습니다.
네트워크 경로
POSIX 셸 호출은 모듈 소스와 독립적으로 포워드 프록시를 제공할 수 있습니다.
HTTPS_PROXY=http://203.0.113.10:8080 go mod download
문서의 엔드포인트를 바꾸고 의도한 GOPROXY 값을 유지하세요. 공용 HTTP 프록시를 사용하도록 허용된 공용 모듈 다운로드에는 HTTP 프록시 목록에서 후보를 선택하세요. 직접 연결로 남아야 하는 HTTP 전송 대상에는 NO_PROXY을 사용하세요.
모듈 정책에 따라 다운로드가 모듈 서비스, 체크섬 서비스, 아티팩트 호스트 또는 버전 관리 서버에 연결할 수 있습니다. 요청이 실패하면 Go가 선택한 소스와 해당 호스트에 도달하는 데 사용한 경로를 모두 확인하세요. go env 조회만으로는 모든 프록시 환경 변수를 알 수 없고 다운로드가 어떤 연결을 열었는지도 증명할 수 없습니다.