Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[hint] HTTP Protocol header compliance #1619

Open
Malvoz opened this issue Dec 19, 2018 · 2 comments
Open

[hint] HTTP Protocol header compliance #1619

Malvoz opened this issue Dec 19, 2018 · 2 comments

Comments

@Malvoz
Copy link
Member

Malvoz commented Dec 19, 2018

Moving towards HTTP/2, and eventually HTTP/3 it'd be helpful if we could have a hint for incompatible, obsolete or deprecated headers.

For example, according to this wikipedia article, the following header fields must not be used with HTTP/2:

  • Connection
  • Proxy-Connection
  • TE (unless trailers value is present).
  • Transfer-Encoding
  • Upgrade
  • Upgrade-Insecure-Requests

This check should also disallow the same non-compliant headers within the Vary (https://github.com/webhintio/rfcs/issues/34) header field if applicable.

@molant
Copy link
Member

molant commented Dec 23, 2018

This is a good idea! So if I've understood you correctly, have a hint that reports obsolete headers depending on the (most recent) protocol used by the site, right?
Should we try to request the site with different protocols (similar to what we do with http-compression or would that be a bit overkill? Maybe an option to do a deeper scan? If so, we will have to figure out how to check what protocol(s) are supported by the site (and figure out how to add support for it in the jsdom connector). @webhintio/contributors thoughts?

@hxlnt
Copy link
Member

hxlnt commented Jul 3, 2019

Additionally, we should consider addressing HTTP header name casing.

Reference: https://twitter.com/jamesmunnelly/status/1145955413248172032?s=21

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants