
Build a Reverse Proxy in Go With httputil ReverseProxy
Build a reverse proxy in Go with httputil.ReverseProxy: Rewrite instead of Director, forwarded headers, error handling, streaming and path based routing.
Sockets below HTTP: TCP and UDP servers, TLS, DNS, timeouts, proxies, WebSockets and protocols you write yourself.

Build a reverse proxy in Go with httputil.ReverseProxy: Rewrite instead of Director, forwarded headers, error handling, streaming and path based routing.

Build a WebSocket hub in Go with gorilla/websocket: origin checks, read limits, ping and pong, per client send queues and a rule for slow consumers.

How Go's HTTP client reads HTTP_PROXY, HTTPS_PROXY and NO_PROXY, which hosts it never proxies, why runtime changes are ignored, and how to set one yourself.

Build a server sent events endpoint in Go with flushing, event ids, Last-Event-ID resume, heartbeats and clean shutdown, and see the wire format it sends.

See what Go gives you for HTTP/2 and HTTP/3 with no extra code, count connections to prove multiplexing, and use cleartext h2c with http.Protocols.

Fix listen tcp bind address already in use in a Go server: find the process holding the port, handle containers and restarts, and use port 0 in tests.

Build an HTTP load balancer in Go with round robin and least connections, active health checks with rise and fall thresholds, and passive failure marking.

The zero value http.Client and http.Get have no timeout, lose connections when a body is not drained and read unlimited data. See each failure and its fix.
We send one email when a new article is published. No spam.