在IIS中开启http跳转到https 和 http2的介绍

开启http自动跳转到https上.

首先下载url Rewrite模块 https://www.iis.net/downloads/microsoft/url-rewrite

安装完后, 在iis管理里边会多出url 重写

通过 IIS 管理器图形界面

  1. 打开 IIS 管理器,选中你的网站。
  2. 在功能视图中,双击 "URL 重写"
  3. 在右侧操作栏,点击 "添加规则..." ,选择 "空白规则"
  4. 按以下参数配置:
    • 名称 : HTTP to HTTPS Redirect
    • 匹配 URL : 请求的 URL 与模式匹配,使用 正则表达式,模式为 (.*)
    • 条件 : 点击"添加",输入 {HTTPS},检查输入字符串是否 与模式匹配,模式为 ^OFF$
    • 操作 : 操作类型为 重定向,重定向 URL 为 https://{HTTP_HOST}/{R:1},重定向类型为 永久(301)
  5. 点击右侧的 "应用" 保存规则。

打开浏览器进行验证

对于server2025的服务器. 默认开启了 http2. 可以在绑定中,设置是否禁用http2

开启了 url重写, 是否可以删除 http 80端口

不可以。如果你删除了 HTTP 80 端口的配置,URL 重写规则将无法生效,HTTP 到 HTTPS 的自动跳转功能也会失效。

URL 重写模块需要在请求到达网站应用程序之前"捕获"到该请求,才能执行重定向。

  1. 监听请求 :当用户在浏览器中输入 http://你的域名 时,这个请求会发送到服务器的 80 端口
  2. 触发规则:IIS 必须有一个监听 80 端口的网站配置,才能接收到这个请求。接收到请求后,IIS 才会去检查并执行你设置的 URL 重写规则(例如:"如果请求是 HTTP,就重定向到 HTTPS")。
  3. 执行跳转 :规则生效,服务器向浏览器返回一个重定向指令,浏览器才会再次发起对 https://你的域名 的请求。

如果你删除了 80 端口的绑定,IIS 就无法接收到最初的 HTTP 请求,URL 重写规则自然也就没有机会运行,用户访问 http:// 时会直接失败。

http2历史

HTTP/2 的历史是一部为了解决"网页越来越快,但协议越来越慢"这一矛盾而进化的历史。它的普及情况则是一场由浏览器和科技巨头推动的、对用户体验"看不见的革命"。

HTTP/2 的发展历史

HTTP/2 的诞生,源于其前身 HTTP/1.1 在面对现代复杂网页时的力不从心。

1. 前身:HTTP/1.1 的瓶颈

HTTP/1.1 自1997年发布以来,长期作为Web的基石。然而,随着网页变得日益复杂,包含大量图片、CSS和JavaScript文件,HTTP/1.1的几个核心缺陷暴露无遗:

  • 队头阻塞 (Head-of-Line Blocking):在一个TCP连接中,客户端必须等待前一个请求完全响应后,才能发送下一个请求。如果一个请求(如下载一张大图)处理缓慢,会阻塞后续所有请求。
  • 头部冗余:每次请求都会携带大量重复的头部信息(如Cookie、User-Agent),且以明文传输,浪费了大量带宽。
  • 缺乏优先级:服务器无法区分资源的重要性,只能按接收顺序处理,导致关键资源(如CSS)的加载可能被延迟。

为了解决这些问题,开发者们不得不采用"域名分片"(将资源分散到不同子域名以建立更多连接)、"合并文件"(将多个CSS/JS文件合并)等变通方案,但这增加了开发的复杂性。

2. 催化剂:Google 的 SPDY 协议

2010年,Google为了解决上述性能问题,推出了一个名为 SPDY 的实验性协议。SPDY 并非要完全取代 HTTP,而是在应用层和传输层之间增加了一个"垫片",引入了多项革命性技术:

  • 多路复用:允许在单个TCP连接上并行发送多个请求和响应。
  • 头部压缩:有效减少了请求头的体积。
  • 服务器推送:服务器可以主动向客户端推送预判其需要的资源。

SPDY 在实践中证明了其巨大的性能优势,迅速获得了业界的关注和采纳,这直接催生了制定新一代HTTP标准的需求。

3. 标准化:HTTP/2 的诞生

在 SPDY 的成功基础上,互联网工程任务组(IETF)开始着手制定官方的 HTTP/2 标准。经过几年的讨论和改进,HTTP/2 于2015年5月正式发布(RFC 7540)

HTTP/2 的核心思想几乎完全继承了 SPDY,主要特性包括:

  1. 二进制分帧层:这是最根本的改变。HTTP/2 不再是基于明文的文本协议,而是将请求和响应拆分成更小的二进制"帧"进行传输,极大提升了解析效率。
  2. 多路复用:基于二进制分帧,客户端和服务器可以在一个TCP连接上同时交错发送多个请求和响应,彻底解决了应用层的队头阻塞问题。
  3. 头部压缩 (HPACK):使用专门的 HPACK 算法对头部信息进行压缩,显著减少了传输开销。
  4. 服务器推送:允许服务器在客户端请求一个资源时,主动将客户端可能需要的其他资源(如CSS、JS文件)一并推送过去,减少网络往返次数。

HTTP/2 的普及现状

HTTP/2 的普及是一场"静悄悄"的革命。对于普通用户而言,你无法直接"看到"它,但你能感受到它带来的"这个网站很快"的体验。

1. 广泛的市场采用率

HTTP/2 已被全球绝大多数主流网站和浏览器广泛采用。

  • 总体数据 :根据2023年的统计数据,在全球访问量排名前1000的网站中,约有67%已经支持 HTTP/2
  • 巨头引领 :几乎所有你每天访问的知名网站都已采用 HTTP/2,例如:
    • 搜索引擎:Bing
    • 社交媒体:微博
    • 电商平台:淘宝
    • 内容平台:腾讯视频
2. 成为现代Web的"标配"

如今,启用 HTTP/2 已成为网站性能优化的基础操作。

  • 浏览器强制要求 :所有主流浏览器(Chrome, Firefox, Safari, Edge等)都要求 HTTP/2 必须在 HTTPS (TLS) 之上运行。这意味着,启用 HTTP/2 的同时也强制提升了网站的安全性。
  • CDN 简化部署:像 Cloudflare、阿里云、腾讯云等主流内容分发网络(CDN)服务商,都提供了"一键开启"HTTP/2 的选项。这极大地降低了网站(尤其是中小型网站)的部署门槛,是 HTTP/2 得以快速普及的关键推手。
相关推荐
霪霖笙箫2 小时前
「JS全栈AI Agent学习」六、当AI遇到矛盾,该自己决定还是问你?—— Human-in-the-Loop
前端·面试·agent
煜bart2 小时前
使用 TypeScript 实现算法处理
开发语言·前端·javascript
kevien_G12 小时前
Http协议
网络·网络协议·http
Mike_jia2 小时前
NginxPulse:Nginx日志监控革命!实时洞察Web流量与安全态势的智能利器
前端
风之舞_yjf2 小时前
Vue基础(31)_插件(plugins)、scoped样式
前端·vue.js
M ? A3 小时前
Vue3+TS实战避坑指南
前端·vue.js·经验分享
Mintopia3 小时前
你以为是技术问题,其实是流程问题:工程效率的真相
前端
Mintopia3 小时前
一套能落地的"防 Bug"习惯:不用加班也能少出错
前端
亿元程序员3 小时前
箭头游戏那么火,搞个3D的可以吗?我:这不是3年前的游戏了吗?
前端