cs531-f19 / discussions

Discussions board for CS 431/531 Web Server Design course
2 stars 12 forks source link

Non-standard Status Codes #81

Open ibnesayeed opened 4 years ago

ibnesayeed commented 4 years ago

Find up to two "in the wild" examples of different response codes not defined in an RFC (e.g., 299 or 999). Standard HTTP status codes and their corresponding RFCs are listed in the HTTP Status Code Registry.

himarshaj commented 4 years ago

hjayanet@E-3102-15:~$ curl -I --url https://www.linkedin.com/company/linkedin HTTP/2 999 date: Mon, 09 Dec 2019 22:47:35 GMT x-li-pop: prod-vmi1 x-li-proto: http/2 x-li-uuid: TY1jsX3V3hWguUntQCsAAA== set-cookie: trkCode=bf; Max-Age=5 set-cookie: trkInfo=AQELSO3bdR9woQAAAW7s2LNYbenFqTp6OWFrIGZCgr4tY1irECv3WZszxbGPSwQSRkL7gc12YRtgu4I2nMJLRC-orIO1M-PlfPxElb2D7vE66s7cIDGVJaEGxfwD2twCtO6KBCY=; Max-Age=5 set-cookie: rtc=AQFtUgWGj9nFVgAAAW7s2LNYQoYx18e-BovlZUuqPNlah_uQzatZdwv9GeoZxpGDOu_jS-A7AVzAl4nn8YNMvw5ZLUOdySaC3TigEM5dOj9qW9Gt9eXK6DlpLw_4c6gqdDA7TeT0og4eLEzjjL7WfZVtx8-HwaWzu4vpwPWHD6K8bO5A2VnvOSjlvWXBcNOgmWES41KXmdLj38VF; Max-Age=120; path=/; domain=.linkedin.com content-length: 1461 content-type: text/html

Neyo-odu commented 4 years ago

curl -I vkontakte.ru

HTTP/1.1 418 Server: VK Date: Tue, 10 Dec 2019 20:08:51 GMT Content-Length: 0 Connection: keep-alive X-Frontend: front605104 Access-Control-Expose-Headers: X-Frontend

ibnesayeed commented 4 years ago

@Neyo-odu, I am glad that you found a 418 in the wild. This actually means I'm a Teapot which was defined in an RFC as an April Fool's joke. On the one hand it is actually defined in an RFC, on the other hand it is not listed in the IANA registry, so I will accept it as a valid submission.

Neyo-odu commented 4 years ago

That's very cool, I had no idea! Would I be able to use this one also?

curl -I https://www.google.com/teapot HTTP/1.1 418 I'm a Teapot Content-Type: text/html; charset=ISO-8859-1 Date: Thu, 12 Dec 2019 06:22:11 GMT Server: gws Cache-Control: private X-XSS-Protection: 0 X-Frame-Options: SAMEORIGIN Transfer-Encoding: chunked Alt-Svc: quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000 Accept-Ranges: none Vary: Accept-Encoding

ibnesayeed commented 4 years ago

Would I be able to use this one also?

The task is to find different response codes, so it's a no.

himarshaj commented 4 years ago

Z:>curl -i http://getstatuscode.com/420

HTTP/1.1 420 Policy Not Fulfilled Connection: Keep-Alive X-Powered-By: PHP/7.2.25 Content-Type: text/html; charset=UTF-8 Transfer-Encoding: chunked Date: Thu, 12 Dec 2019 15:37:02 GMT Server: LiteSpeed Access-Control-Allow-Origin: * Access-Control-Allow-Headers: origin, x-requested-with, content-type Access-Control-Allow-Methods: PUT, GET, POST, DELETE, OPTIONS

ibnesayeed commented 4 years ago

@himarshaj, we will not entertain services that allow clients to decide what status code or headers to get back. Things like getstatuscode.com or httpbin.org are good for testing, but not a good example to be claimed as "in the wild". Also, setting up your own site to satisfy certain requirements would be against the essence of these "in the wild" assignments.

Neyo-odu commented 4 years ago

curl -I http://ttktrans.com

HTTP/1.1 521 Origin Down Date: Thu, 12 Dec 2019 16:35:24 GMT Content-Type: text/html; charset=UTF-8 Transfer-Encoding: chunked Connection: keep-alive Set-Cookie: __cfduid=d2f78d78856fa28cd5cdf2686751607121576168524; expires=Sat, 11-Jan-20 16:35:24 GMT; path=/; domain=.ttktrans.com; HttpOnly Cache-Control: no-store, no-cache CF-Cache-Status: DYNAMIC Set-Cookie: cf_ob_info=521:54411c7e8c69ea45:IAD; path=/; expires=Thu, 12-Dec-19 16:35:54 GMT Set-Cookie: cf_use_ob=80; path=/; expires=Thu, 12-Dec-19 16:35:54 GMT Expires: Thu, 01 Jan 1970 00:00:01 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Server: cloudflare CF-RAY: 54411c7e8c69ea45-IAD

This is a cloud-flare specific status code. Due to which means its not defined in any RFC or IANA