Defaults.Exposed › 修复 › HTTPS 与强制安全跳转
如何修复 HTTPS 与强制安全跳转
HTTPS 就是浏览器地址栏里那把锁——它加密你网站与客户之间往来的一切,让传输途中无人能读取或篡改。强制安全跳转则确保访客即便在地址里没敲「https://」,也会被自动送到那个加密版本上。两者合在一起,是一个网站能被视为安全的最基本前提。
对您业务的关键影响: 没有 HTTPS,客户发给你的每一个密码、卡号和消息都以可读明文穿越互联网,而且 Chrome、Edge、Safari 和 Firefox 都会在访客读到一个字之前,给你的网站盖上「不安全」的戳。没有跳转,即便装了证书的网站,也会让头一次访问毫无保护。两者都让你失去信任、销售和搜索排名——而两者都免费、几分钟就能修。
这会让您付出什么代价
- 一个初次访客在你的页面加载的瞬间看到一个大大的「不安全」警告。多数人会以为这网站是假的、坏的或不安全的,转身去找竞争对手——而你甚至不知道这笔生意丢了。
- 一个客户在咖啡馆、酒店或机场通过未加密连接输入卡号或登录。同一 WiFi 上的某人以明文读到了它,随后发生的盗刷被算到你头上。
- 一个大客户的采购或安全团队在签约前快速扫一下,发现没有 HTTPS 或缺少强制安全跳转,于是把合同搁置,直到你能证明已修好。
- Google 把你排在提供 HTTPS 的竞争对手之后,于是你多年里悄悄流失搜索流量,却从未把它和这个缺口联系起来。
- 监管方或你的支付服务商把以明文发送个人或卡数据当作须上报的过失,让一个五分钟的免费修复变成一个合规问题。
为什么它重要。 HTTPS 是网站安全的地板,不是天花板——它让那把锁出现,并阻止你客户发送的一切在途中被读取或改动。强制安全跳转封住了仅有证书时还敞着的那个缺口:人们几乎从不敲「https://」,所以没有跳转,他们的第一个请求会在安全版本加载前就以无保护状态传出去。一个缺了其中任何一项的网站,在访客眼里显得不安全、在搜索里排名更低、并暴露真实的客户数据——这正是为什么它是我们评分中权重最重的单项失败。
这是什么,大白话版
HTTPS 是你网站的安全、加密版本——就是地址栏里显示一把锁的那个。访客处于 HTTPS 时,他们浏览器与你网站之间往来的一切(他们看到的页面、填的表单、密码、卡号)都被打乱,让中间任何人都读不了也改不了。普通版本 HTTP 则把所有这些以可读文本发送,同一网络上的任何人都能拦截。
把这件事做对有两部分,我们两个都查:
- 到底有没有 HTTPS? 你的网站有没有一张能用的安全证书,让那个加密、带锁的版本存在?这是两者中更严重的一个——没有它就根本没有加密。
- 你的网站强制访客用它吗? 几乎没人会手动敲「https://」。如果有人只敲你的域名,他们的浏览器会先试普通的 HTTP 版本。一个强制安全跳转会自动把那个请求弹到加密版本。没有它,即便你有证书,每次访问的最初片刻也是无保护的。
你两个都要。一张有证书却没有跳转的网站,就是一扇上了锁、访客却能直接绕过去的前门。
商业利害
这是一个网站是否安全的最基本信号——而且至关重要的是,它是你客户能亲眼看见的那一个。每一个现代浏览器(Chrome、Edge、Safari、Firefox)都会在地址栏里把一个没有 HTTPS 的网站标为**「不安全」**,并在有人试图往表单里打字时显示警告。你的访客不需要懂证书是什么,就会对那个词作出反应。
除了那个看得见的警告,这还影响三件业主直接在乎的事:信任(人们会离开看起来不安全的网站)、搜索排名(Google 多年来一直把 HTTPS 当作排名信号、偏向安全网站)和真实暴露(以普通 HTTP 发送的数据确实能被同一网络上的他人读到)。它也是一个大客户的安全团队在尽职调查里几秒钟就会查的那类东西——缺了它可能让一笔生意搁浅。
这会让你付出什么代价
- 无声的离开。 一个潜在客户从搜索结果或广告点进来,页面带着一个灰色的「不安全」徽章加载出来——或者更糟,一个全屏警告。他们不会发邮件来问为什么;他们只是关掉标签页,点下一条结果。你为那次访问付了钱,却在他们读到一个字之前就把它弄丢了,而你的分析里没有任何东西告诉你原因。
- 被拦截的登录或支付。 一个客户在酒店或咖啡馆用共享 WiFi 时登录或结账。因为连接没有加密,附近某人以明文捕获了他的密码或卡号。随之而来的欺诈被报为你的泄露,而接那些愤怒电话和退款的是你。
- 搁浅的生意。 一个大客户准备签了,但他们的采购流程包含对你网站的快速安全检查。结果标记出没有 HTTPS、或缺少强制安全跳转。一下子你不是在成交,而是在解释一个基本的安全缺口——合同等着,或悄悄花落于通过了检查的竞争对手。
- 缓慢的排名渗漏。 两家企业卖同样的东西;一家提供安全 HTTPS,一家没有。搜索引擎把安全的那家往上推。几个月里你稳稳流失一缕免费流量,却从未把它和这一个设置联系起来。
- 你从没写过的注入内容。 在未加密连接上,中间的任何人——一个可疑的公共网络、一个被攻陷的路由器——都能在访客加载你页面时,往里塞虚假弹窗、诈骗优惠或恶意软件。对那个访客而言,看起来就像是你的网站干的。
它到底是什么
当浏览器通过 HTTPS 连上一个网站时,会发生两件事。第一,网站出示一张证书——一份由受信任机构签发的凭据,证明网站是它所声称的那个。第二,浏览器和服务器商定一把加密密钥,用它打乱彼此交换的一切。我们的第一项检查,HTTPS 可用,只是问:我们能否在标准安全端口(443)上与你的网站建立一个安全的 TLS 连接、并取回一张有效证书?能,那把锁就能出现,加密开启。不能,那你的网站就根本没有安全版本——这是我们评分中权重最重的失败。
第二项检查,强制安全跳转,覆盖了仅有证书时还敞着的一个缺口。人们敲的是「yourbusiness.com」,而不是「https://yourbusiness.com」。那个光秃秃的请求先去了普通的 HTTP 版本。跳转是一行指令,说「把任何到达不安全版本的人,直接送到安全版本」。我们的检查问:当我们请求你的普通 HTTP 地址时,你的网站会把我们弹到 HTTPS 吗?会的话,无论访客怎么敲你的地址,每一个人最终都受保护。不会的话,那最初无保护的一跳会以明文携带浏览器发送的一切——Cookie、表单数据。
「好」长什么样: 一张有效、受信任的证书,让每个页面都显示那把锁,并且每一个普通 HTTP 请求都被自动跳转到 HTTPS 版本(最好用永久的「301」跳转,它还会把你的搜索排名干净地传递给安全地址)。
如何修复(免费,约 15 分钟)
把这一节交给你的 IT 人员或主机商支持——修复免费。 这两部分都分文不取:受信任的证书是免费的、会自我续期,而打开跳转在多数平台上就是一个设置。通过这项检查不需要任何付费产品。
有两样东西要打开。在多数现代主机上,做完第一样常常让第二样变成一键开关。
1. 拿一张证书让 HTTPS 生效(那把锁)。
- Cloudflare: 如果你的网站在 Cloudflare 后面,SSL 由它替你处理。把 SSL/TLS 模式设为「Full」(若你的源站也有证书则设为「Full (strict)」)。
- 建站工具和托管主机(Squarespace、Wix、Shopify、Webflow、GoDaddy 建站工具,多数 Microsoft 365 / Google Workspace 网站托管):HTTPS 自动提供;只要确认在你的网站/域名设置里启用了——通常没什么要安装的。
- cPanel 主机: 打开 SSL/TLS Status 并运行 AutoSSL,它会签发一张免费的 Let’s Encrypt 证书。
- 你自己的服务器(VPS): 用 Certbot 安装 Let’s Encrypt——
sudo certbot --nginx -d yourdomain.com(或--apache)。它会获取并安装一张免费证书,并配好自动续期。 - 其他任何情况: 联系你主机商的支持,请他们「为我的域名启用一张免费的 SSL 证书」。几乎所有主机商都免费提供这个。
2. 强制每一个访客走 HTTPS(那个跳转)。
- Cloudflare: SSL/TLS → Edge Certificates → 打开 「Always Use HTTPS」。这就是全部活儿。
- 建站工具(Squarespace、Wix、Shopify 等): 在你的网站设置里找一个「Force HTTPS」或「Secure (HTTPS)」开关,把它打开。
- Nginx: 在 80 端口加一个返回永久跳转的 server 块——
return 301 https://$host$request_uri;。 - Apache(.htaccess): 启用重写并跳转任何非 HTTPS 请求——
RewriteEngine On、RewriteCond %{HTTPS} off、RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]。 - IIS(Windows 主机): 安装 URL Rewrite 模块,添加一条「HTTP to HTTPS」跳转规则。
两者都打开后测一下:在地址前面敲上普通的 http://,确认浏览器自动跳到带锁的 https:// 版本,并确认主要页面上都显示那把锁。
常见错误
- 装了证书,却没有跳转。 最常见的缺口。你访问自己网站时看到那把锁(因为你的浏览器记住了 HTTPS),就以为搞定了——但敲光秃秃域名的新访客仍然先落在 HTTP 上。永远显式地测一下普通的
http://版本。 - 混合内容。 你的页面通过 HTTPS 加载,却从一个旧的
http://地址引入图片、脚本或字体。浏览器要么拦掉它、要么把锁降级成警告。把那些引用更新到https://(或改成相对链接)。多数平台都有一个「混合内容」或「不安全内容」报告能找到它们。 - 用了临时(302)跳转而非永久(301)跳转。 302 对访客有效,但告诉搜索引擎这次迁移是临时的,所以排名价值不会干净地传到你的安全地址。用永久的 301。
- 只跳转光秃秃的域名,不管「www」(或反过来)。 确保
yourdomain.com和www.yourdomain.com都落到 HTTPS 上,否则有一条路径仍然暴露。 - 让证书过期。 一张失效的证书会抛出一个全屏浏览器报错,把访客当场挡住。免费的 Let’s Encrypt 证书自动续期;如果你是手动买的,就提前设个日历提醒。
FAQ
见上方的问题——它们涵盖了不懂技术的「我自己能做吗」、有锁与强制跳转的区别、证书的费用与续期、纯展示网站是否需要它,以及它与 HSTS 的关系。
常见问题
我不懂技术——这个我自己能搞定吗?
你不需要懂任何细节。这两半都由运营你网站或主机的人打开,在多数现代平台上就是一张免费证书加一个开关——往往真的就是一个标着「始终使用 HTTPS」的复选框。把「如何修复」一节交给你的网站人员或主机商支持;修复分文不取,通常几分钟搞定。
我的网站上已经有一把锁了——是不是就完事了?
可能没有。那把锁意味着你的安全(HTTPS)版本存在,但它不保证访客被送到那个版本上。如果有人敲你的地址时没带「https://」,而你的网站不跳转他们,他们的第一次连接仍是未加密的。锁的检查和跳转的检查是两回事——你两个都要。
证书是不是很贵、很难续期?
不是。来自 Let's Encrypt 的免费证书被每一个主流浏览器信任,且会自动续期,所以没什么要记的、也没什么要付的。付费证书是有,但对一个普通的企业网站来说并不提供额外的安全——加密是完全一样的。
我们网站上不收款也不需登录——这还重要吗?
重要。无论网站做什么,浏览器都会把任何非 HTTPS 网站标为「不安全」,所以哪怕一个纯展示网站也会失去信任和搜索排名。HTTPS 还能阻止中间的任何人在访客加载页面时,往你的页面里注入虚假内容、诈骗弹窗或恶意软件。
打开强制跳转会不会搞坏我的网站?
只要你的安全版本已经能用——如果你有一张有效证书,它就能用——打开就是安全的。标准做法是先确认你的网站能通过 https:// 正常加载,再打开跳转。唯一要留意的是混合内容(见下方「常见错误」),它很容易发现和修复。
这个和 HSTS 有什么区别?
本页讲的是究竟有没有 HTTPS、以及把访客送上去。HSTS 是更进一步:它告诉浏览器记住你的网站是仅限 HTTPS,从此再也不准用不安全方式连接——它强化了你在这里搭好的东西。先把 HTTPS 和跳转做对;HSTS 是建在其上的。