智核技术笔记

返回文章列表

浏览器地址栏里的 http:// 和 https:// 只差一个字母,打开失败时的原因却常常不在页面文件,而在这两套访问方式没有配齐。个人网站上线前,把请求、响应、证书和跳转这几件事分开看,排错会直接一些。

一次访问其实是一组请求

在地址栏输入页面地址后,浏览器按 HTTP 向网站所在的服务器发请求。请求里最关键的是三样东西:方法、路径和主机名。打开首页时方法一般是 GET,路径是 /,主机名来自地址栏,例如 www.aicore.icu。

服务器返回一段状态和正文。常见状态里,200 表示拿到了内容,301 或 302 表示要改去另一个地址,404 表示这条路径上没有内容。正文就是 HTML、样式、图片或脚本。

一个页面很少只发一次请求。HTML 里引用了样式表、字库和脚本,浏览器会按这些地址再发请求。其中任何一个地址写成了别的网站,页面显示时就要依赖那一个网站;那个网站慢、打不开或内容变了,自己的页面都会受影响。个人站点把样式、字库、图片和脚本放到自己的域名下,页面是否完整就不由别人决定。

HTTP 本身不管这些文件放在哪一台机器上,它只规定请求和响应怎么写。文件是静态生成好的,还是临时拼出来的,对浏览器来说都是一次响应。

HTTPS 比 HTTP 多了身份和加密

HTTP 把请求和响应直接发出去。在咖啡店、小区和公司的网络里,链路上的设备有机会看到或改动这些内容。HTTPS 先完成 TLS 握手,再在这条加密通道里传送原来的 HTTP 报文。

握手时服务器要出示证书。浏览器检查三件事:证书是受信任的机构签发的,证书没有过期,证书里的名字覆盖地址栏里的主机名。www.aicore.icu 和 aicore.icu 是两个名字。证书只写了其中一个时,另一个会报名称不匹配,即使 IP 地址相同也一样。

证书过期或名字不对时,浏览器会拦住访问。这时候页面文件通常还在,问题出在证书,而不是文章内容。

个人网站上线时要核对的四项

  1. 两个域名都解析到站点所在的服务器。只解析了带 www 的那一个,另一个地址无法打开。
  2. 证书同时覆盖要使用的名字,或者每个名字都有自己的有效证书。
  3. 选定一个正式地址。本文的站点以 https://www.aicore.icu 为准,另一个域名的 HTTP 和 HTTPS 都跳到它,避免同一篇文章出现两个地址。
  4. 跳转使用 301,并且只跳到 HTTPS 的正式地址,不要在两个域名之间来回跳。

静态页面托管在 Web 服务器上时,这些规则写在服务器配置里,不用放进每一篇文章。改完配置后,用浏览器无痕窗口分别打开四个地址:两个域名,各自的 HTTP 与 HTTPS。最终都应落在同一个带锁的正式地址,刷新以后地址不再变化。

常见错误

  • 页面能用 IP 打开,用域名却失败。多半是域名没有解析到这台机器,或证书里没有这个域名。
  • 只开了 HTTPS,没有把 HTTP 跳过去。访客从旧链接进来会连接失败,或者看到未加密的重复内容。
  • 证书续期只覆盖了主域名,忘了带 www 的名字。到期前主站正常,另一个入口先报错。
  • 页面里的图片、字库或脚本仍指向别的网站。主站是 HTTPS,那些资源一旦失败,版式和功能会缺一块。
  • 把跳转写成了页面里的刷新标签,而服务器仍返回 200。检索和收藏会把两个地址当成两页。

本机用 curl -I 看响应头时,关注两行就够:状态是不是 301,Location 是不是正式的 HTTPS 地址。浏览器如果提示证书无效,先看证书的名称和有效期,不要先去改文章。

小结

HTTP 负责提出要哪一页、返回那一页;HTTPS 在传输前确认服务器证书并加密内容。个人网站把正式地址定成一个 HTTPS 域名,让其余入口都跳过去,并把页面依赖的文件放在自己的站点里。这三件事做到,访问失败时也能分清是解析、证书、跳转还是页面本身的问题。

HTTP 与 HTTPS:个人网站需要了解的基础知识
https://www.aicore.icu/blog/http-https-basics
作者 智核技术笔记
发布于 2026年10月26日