对于任何网站,正确配置 HTTP 标头非常重要。 关于头条新闻的主题已经写了很多文章。 这里我们总结了积累的经验和RFC文档。 有些标题是强制性的,有些已经过时,有些可能会引起混乱和矛盾。 我们做了一个腹袋
- 设置标准标头的值;
- 添加您自己的自定义标头;
- 指定HTTP协议版本:1.0、1.1、2(检查是否支持HTTP/2);
- 指定请求方法、超时时间和发送到服务器的postdata;
- 如果服务器响应包含 Last-Modified 或 ETag,beanbag 还会检查对 If-Modified-Since、If-None-Match 请求的响应的正确性。
我们不会假装自己是最终的真理。 当然,对于个别内容和个别项目,可能存在偏差。 但这项服务会准确地告诉您应该注意什么,并且它可能对您编辑标题很有用。 下面列出了验证服务关注的事项。 为什么会这样,读一下
必需的标头
- 日期
- Content-Type 表示文本内容的字符集,最好是utf-8
- 文本内容的内容编码压缩
过时且不必要的标头
- 具有详细 Web 服务器版本的服务器
- X-Power-By
- X_ASPNET-版本
- 到期日期
- 附注
- P3P
- 通过
- X-UA兼容
安全所需的标头
- X内容类型选项
- X-XSS保护
- 严格,运输和安全
- 推荐人政策
- 功能政策
- Content-Security-Policy 或 Content-Security-Policy-Report-Only 用于禁用内联脚本和样式。
用于缓存的标头
对于具有长缓存寿命的静态内容来说是强制性的,对于具有短缓存寿命的动态内容来说是非常理想的。
- 最后修改
- 标签
- 缓存控制
- 变化
- 服务器正确响应标头非常重要:If-Modified-Since 和 If-None-Match
HTTP / 2的
服务器现在应该支持 HTTP/2。 默认情况下,该服务通过 HTTP/2 检查服务器的操作。 如果您的服务器不支持 HTTP/2,则选择 HTTP/1.1。
来源: habr.com