the HTTP 511 status code defined in
RFC 6586 section 6 would be useful for operating system captive portal detection because it provides a clear signal that this is a portal However, it's hard to implement because it's not possible to get the login URL without parsing the HTML to find the <meta http-equiv="refresh" tag. Some common implementations (at least the
Android implementation, maybe others) do not do this, preferring instead to look for a "location" header.
Is there a reason why the RFC did not require a location header for this status code?
I'm wondering if we can/should declare it a best practice that a location header (or other header) SHOULD be provided for every 511 response.