HTTPfy

501 Not Implemented

The server does not support the functionality required, typically an unrecognised request method.

501 at a glance

Code
501
Name
Not Implemented
Class
5xx Server error
Status
IANA-registered standard code
Defined in
RFC 9110, Section 15.6.2
Cacheable by default
Yes, heuristically cacheable (RFC 9110 section 15.1): without Cache-Control or Expires, caches may store it and pick a freshness lifetime themselves. Send explicit Cache-Control to stay in control.

What 501 means

501 Not Implemented means the server does not recognise the request method or lacks the capability to fulfil it on any resource. Compare 405, where the server knows the method but this resource does not allow it. 501 is heuristically cacheable.

What typically causes a 501

  • Custom or WebDAV methods (PROPFIND, PURGE, MKCOL) sent to servers that do not know them.
  • nginx rejects unsupported Transfer-Encoding values with 501.
  • Placeholder API endpoints that return 501 until implemented.

Fix it on the server

  • Return 405 with Allow if the method is known but not permitted on the resource.
  • For PURGE on caches (Varnish, nginx proxy_cache), enable and restrict the method explicitly.

Fix it as a client or visitor

  • Use a standard method the API documents, and check you are talking to the right server or port.

Example response

HTTP/1.1 501 Not Implemented
Server: nginx
Content-Type: text/html

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