HTTPfy

444 No Response

nginx: close the connection without sending any response.

444 at a glance

Code
444
Name
No Response
Class
4xx Client error
Status
Non-standard used by nginx
Documented by
nginx
Client receives
Nothing: nginx closes the connection without a response.
Cacheable by default
Not applicable: this code is never sent to the client.

What 444 means

444 is an nginx-only instruction, not a status that travels over the wire. return 444; makes nginx close the connection immediately without sending headers. It appears in nginx access logs as 444; the client sees an empty reply or a connection reset. Admins use it to drop requests for unknown hosts, scanners and abusive bots cheaply.

What typically causes a 444

  • A default server block with return 444; catching requests whose Host matches no site (e.g. scanners hitting the IP).
  • Rules dropping bad user agents, exploit paths (/wp-login.php on non-WordPress sites) or blocked countries.

Fix it on the server

  • Use it on the catch-all server for unknown Host headers; for HTTPS, combine with ssl_reject_handshake on; (nginx 1.19.4+) so no certificate is leaked.
  • Check access logs for 444 entries if legitimate users report connection errors: a rule may be too broad.

Fix it as a client or visitor

  • curl reports (52) Empty reply from server and browsers show ERR_EMPTY_RESPONSE. Check you are using the right hostname; you may be hitting the server's default block.

Example response

(no response: connection closed by nginx)

$ curl -i http://203.0.113.10/
curl: (52) Empty reply from server

Opens the HTTP headers tool with your URL filled in; it shows the status line and headers of every redirect hop.