你给网站装了SSL证书,强制跳HTTPS。打开网站一看,图片裂了、样式乱了,地址栏还显示「不安全」。这就是混合内容问题。

什么是混合内容

你网站现在是HTTPS加密访问。但你文章里的图片链接还是老的HTTP地址:http://yoursite.com/uploads/abc.jpg。

浏览器加载HTTPS页面的时候,遇到HTTP的图片、JS、CSS,会认为不安全,直接拦截。结果就是图片裂了、样式没了。

怎么排查

浏览器按F12,切到Console(控制台)标签,刷新页面。会看到一堆红色警告:Mixed Content: The page at 'https://...' was loaded over HTTPS, but requested an insecure element 'http://...'。

这些被拦截的资源,就是你要修的地方。

怎么修复

第一,最简单的方法:装个插件自动替换。免费CMS有专门的「混合内容修复」插件,开启之后自动把文章里的http://替换成https://。你不用手动改几百篇文章。

第二,数据库批量替换。用数据库管理工具,把内容表里的 http://yoursite.com 全部替换成 https://yoursite.com。操作前先备份数据库。

第三,外部资源注意。如果你引用了别人网站的图片、JS(比如统计代码、字体),对方不支持HTTPS,你就别引用了,换成支持HTTPS的服务。

修完之后

刷新页面,图片正常显示了,地址栏小锁也出来了。F12控制台不再报混合内容警告。

别让客户看到你网站「不安全」的提示,信任感直接掉一半。