599
HTTPERRORNotable5xx Server Error (Unofficial)MEDIUM confidence

Network Connect Timeout Error

Production Risk

Low — proxy-specific; investigate upstream server availability and firewall rules.

What this means

599 Network Connect Timeout Error is an informal status code used by some HTTP proxies to signal that a network connection timeout occurred while attempting to connect to the upstream server. It is the connection-phase counterpart to 598 (read timeout) and 504 (gateway timeout).

Why it happens
  1. 1The proxy could not establish a TCP connection to the upstream server within the configured connect timeout.
  2. 2The upstream server is overloaded and not accepting new connections.
  3. 3A firewall is silently dropping connection attempts (causing timeout rather than immediate refusal).
  4. 4DNS resolved successfully but the upstream IP is unreachable.
How to reproduce

A proxy attempts to connect to an upstream server that is overloaded and not completing TCP handshakes.

trigger — this will error
trigger — this will error
GET /api/data HTTP/1.1
Host: example.com
# Proxy → upstream TCP connect timeout

expected output

HTTP/1.1 599 Network Connect Timeout Error

Fix 1

Check upstream server availability

WHEN The upstream server may be down.

Check upstream server availability
# Test connectivity to upstream
nc -zv upstream-server 443
curl -v --connect-timeout 5 https://upstream-server/

Why this works

Confirms whether the upstream server is accepting TCP connections.

Fix 2

Increase connect timeout in proxy configuration

WHEN The upstream is slow to accept connections under load.

Increase connect timeout in proxy configuration
# nginx
proxy_connect_timeout 30s;

Why this works

Gives the upstream more time to complete the TCP handshake before the proxy gives up.

What not to do

Do not use 599 in new API or application code

Use 504 Gateway Timeout — it is the IETF-standardised equivalent.

Version notes
Informal

Not defined in any IETF RFC. Use 504 in any new proxy or application designs.

Sources
Official documentation ↗

Informal convention (no IETF RFC)

Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev

← All HTTP errors