I think the issue is very unlikely to be HTTP/HTTPS as you suggest. What you seem to be saying is:
- a request to https://yourdomain.com/foobar returns "404 not found" - a request to http://yourdomain.com/foobar would return the data of interest If that were the case, Go package fetching *should* accept the 404 response from https as truth. It would never retry the request as http in this circumstance. The same is true of any other http client, such as a browser. But I really don't think that's what's happening here, unless you can prove it using 'curl' - and if you can, it means your webserver configuration is broken. Either turn off HTTPS completely, or fix it so that it returns the same content for both HTTPS and HTTP access (or the correct content for HTTPS, and a redirect for HTTP) More likely, I think you've either set up your local repository wrongly, or the way you've configured Go to use it. On Friday, 2 September 2022 at 02:34:13 UTC+1 wangshan...@gmail.com wrote: > Hi, recently I've been trying to learn the module management.I want to get > private module from my own repository. The repository only support HTTP > request. I use nginx to proxy to the repository, and nginx listens port 443 > and 80. When I try to execute "go get myrepo.com/myrepo", it gives me > "404 not found", of cause I using GOINSECURE. My go version is 1.19, and > system is windows 10. > I find the source code in cmd/go/internal/web/http.go. In "func > get(security SecurityMode, url *urlpkg.URL) (*Response, error)", firstly it > try to use HTTPS to get mate. And if the response return nil, it will try > to use HTTP to get mate. In my case, the response body which HTTPS returned > is nginx's 404 page, it's not nil. So it will not try to use HTTP to get > mate. > I want to know why is it possible to determine the use of HTTP by relying > on whether response is nil, rather than simultaneously determining the > response status. > Sorry for the poor expression, because I'm not good at English. > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/ec80d0ab-92ef-4c87-a214-354adc4aa60cn%40googlegroups.com.