解决博客图片无法显示问题
问题概述
在我装上了Let’t Encrypt签发的SSL证书之后,我认为博客网站重回https了,而且博客也没有太大的技术框架更迭的情况发生,故本应高枕无忧,让服务器继续提供web访问服务。但我突然发现,博客的图片无法正常显示了——博客标题以及博客内容的图片都无正常显示。以下是给出的一个解决方法。
解决思路
作为一名合格的工程师,我们应该按照发现问题-查找经验-解决问题-总结经验
的步骤来,缩小出错范围,找到问题点,将变量控制在一个可控的范围内。总结经验是为了以后解决此类问题做一个通用解法。
实现方法
确定出错范围
很显然的是这些出错的图片都是同一个原因导致,故我们可以拿到其中一个图片进行测试,因为图片都是oss图床上分发下来的,可以直接测试其图片地址。我发现图片能够正常在浏览器显示,说明提供的图片没有问题,注意到http上不安全字样,猜测图片无法访问的原因可能是浏览器阻止了图片加载,理由是我后面给网站装上了ssl证书,对于非安全链接图片,浏览器会做出拦截。因此我找到了问题所在。
解决错误
有2种解决方法:
- 在oss平台绑定ssl证书并将http强制转换成https,这是最优雅的解决方法。
- 在md文件中使用相对地址,例如:
http://example.com/image.jpg
改为//example.com/image.jpg
,因为之前没出现这种情况,每一个md文件内的图片都需要手动修改(或写一个批处理脚本),太麻烦故舍弃掉。
OK,选择好方法后,直接在oss平台配置了,只需要将证书上传就行,一顿配置后能正常显示图片了。
结论
本篇文章记录了一类图片无法加载问题是如何被解决掉的,成效卓著。

感谢您的支持 | Thank you for supporting
解决博客图片无法显示问题
http://example.com/2025/10/07/solve_the_problem_for_blog_images/