Fixes #4051 Function `parseRemoteAddr` is forcing protocol HTTP and protocol HTTPs to tcp. This causes the bug in the issue #4051. I find that the tcp is only needed where `net.Dial`. So I moved the switch to makeHTTPDialer.