8 ms·
I'm betting that's their CDN swallowing the nonstandard (even though its on spec) http code. Varnish does the same thing, which is why you can't get a 418 code
by JonnieCache 15y ago
I'm betting that's their CDN swallowing the nonstandard (even though its on spec) http code.
Varnish does the same thing, which is why you can't get a 418 code out of httpstat.us/418, which is on heroku. Same goes for that cat-based one that came up the other week, which is also on heroku.
- lukeschlather 15y agoIs it on spec? Somehow I doubt there's an actual teapot involved anywhere in responding to that request.
- ejames 15y agoHTTP status 418 is an "official" status code released in the traditional yearly April Fool's Day paper[1] of the Internet Engineering Task Force. It was the joke for 1998. [1]http://en.wikipedia.org/wiki/Hyper_Text_Coffee_Pot_Control_Protocol http://en.wikipedia.org/wiki/Hyper_Text_Coffee_Pot_Control_P...
- dandelany 15y agoTrue, but the spec clearly states that the 418 code is to be used only when "the HTCPCP server is a teapot; the resulting entity may be short and stout."
- StavrosK 15y agoHow does Varnish know the backend server is not a teapot? It's a blatant violation of the standard to strip it out.
- drostie 15y agoJust to add, while HTTP 418 is an April Fools joke, I had a semi-legitimate usage case for this at one point with http://drostie.org/ http://drostie.org/ . The idea was that I might have domains configured on my DNS which resolved to the same machine. And if you connect to that machine on port 80, no matter what domain, you will get the HTTP server. The problem is, the DNS might recognize domains which the HTTP server is not listening for, e.g. "mail.drostie.org" or some such. When you visit those in a web browser, the server can't do what it's supposed to do -- pretend it's not listening on port 80 -- because it already received the HELO and the GET. It's also clearly a client error, so the error code should be in the 4xx range. But just go down the list: it's not a syntax error (400), it wasn't unauthorized (401), payment isn't required (402), and the server technically didn't even understand the request, so it's not 'I understand but I refuse to fulfill' (which is 403). It's not that some file was not found (404) or that GET is not allowed (405) or that we couldn't fit the Accept HTTP header (406). The real problem is that you asked mail.drostie.org to do something other than handle mail. None of the 4xx status codes really fits, and the one that comes closest is... 418. You asked me to brew coffee, but I'm a teapot.
- andrewaylett 15y agoNot a bad idea :). What I tend to do is make my default vhost show a page which explains what the server is and points the user to a more useful domain.
- benatkin 15y agoyou can get one here: http://httpbin.org/status/418 http://httpbin.org/status/418
- eridius 15y agoWorks for me... > curl -i 'httpstat.us/418' HTTP/1.1 418 Unknown Error Server: nginx Date: Wed, 25 Jan 2012 23:58:13 GMT Content-Type: text/plain Connection: keep-alive Access-Control-Allow-Origin: * Content-Length: 16 X-Varnish: 1346742606 Age: 0 Via: 1.1 varnish 418 I'm a Teapot although it shows as 'Unknown Error' instead of 'I'm a Teapot'