• 由微博图床挂掉之后想到的


    前不久,微博图床挂了,这对于众多使用 Markdown 写技术博客的人简直太残忍了!看来,图片迁移真的是刻不容缓了,在我准备迁移图片的时候,发现了几个平台对图片不同的处理方式,觉得很有意思,所以记录一下。

    一、背景知识介绍

    1、Markdown 和图床

    (1)Markdown

    Markdown 是一种标记语言,通过简单的标注,可以使文本具有一定格式。例如在文本前加上# ,就是一级标题。后面会抽时间写下 Markdown 的用法,此处不赘述。

    使用 Markdown 能让写作者更关注与内容,而不是格式的调整,并且同样的标记,在各平台显示效果都是一样的。
    这一点有点像 Java,支持跨平台。因此,Markdown 受到众多技术开发者的追捧,没错,你现在看见的这篇文字就是 Markdown 写的。

    (2)图床

    在我看来,Markdown 与图床的关系,就好比面包和牛奶。

    只吃面包肯定会觉得口干舌燥,但是加上牛奶就不一样了,不仅不觉得口干,还会觉得更加美味。写文章也是如此,通篇的文字会让读者觉得无聊,但是在文章中加上相应的图片,便会使得文章更加添彩。
    而图床就是存储图片的地方。

    Markdown 中添加图片,其实就是将图片的链接使用固定格式的标注,如下:

    ![头像](https://img.juemuren4449.com/7af8125993c702dcffbd99ade00c90b4.png)
    

    显示的效果如下:

    头像

    2、微博图床临时补救措施

    文章开头也说到了,微博图床挂了,倒不是说微博的图片服务器不可用了,而是微博的图片不允许外部引用,对于我们写作的人来说,就是“挂了”。

    我也是前几天突然发现自己的博客图片显示不出来了,一顿搜索之后,找到一个临时的解决办法,在这里贴一下,有需要的可以临时补救一下。

    在文章页面源码中加入以下代码:

    <meta name="referrer" content="no-referrer" />
    

    微博这次的调整其实就是做了防盗链,简单说就是除了微博网站,其他网站都不能引用微博的图片。上面说到的代码,意思就是不告诉微博我是谁,既然不知道我是谁,那就得让我引用你的图片。

    更多关于 Referer 的设置及原理,可以参考这篇文章:「Referrer 策略与防盗链」

    二、对比各家的处理方式

    我写文章,都是在有道云里新建 Markdown 笔记编写,图片都是上传到微博图床。

    1、知乎专栏

    知乎专栏默认是不支持 Markdown 格式编辑文章的,但是可以导入 md 文件,而我一般是在自己的博客写好了,直接复制过来。无论是哪种方式,知乎都会将文章中的图片上传到自己的服务器。

    图片链接类似这种:

    https://pic3.zhimg.com/v2-e3aa974990edfbc655a578dfab04c973_1200x500.jpg
    

    2、掘金

    掘金只支持 Markdown 方式编辑文章,会把图片上传到自己的服务器。

    图片链接类似这种:

    https://user-gold-cdn.xitu.io/2019/3/2/1693d5c70a6cfca9?imageView2/0/w/1280/h/960/format/webp/ignore-error/1
    

    3、简书

    简书可以使用富文本或者 Markdown 编辑文章,但是他很魔性,在使用 Markdown 编写文章时,有的图片会上传到自己的服务器,有的则不会,暂时没找到有什么规律。

    图片链接类似这种:

    https://upload-images.jianshu.io/upload_images/121172-5979c9bd0054b6cf.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/803/format/webp
    

    4、CSDN

    CSDN 可以使用富文本或者 Markdown 编辑文章,但是很刚,任何图片都不会转存。

    综上所述,我认为知乎和掘金的处理方式最好,把图片转存到自己的服务器,防止出现原图片链接失效后显示不出图片,影响用户阅读体验的情况。毕竟,数据才是最重要的资源

    三、思考

    1、为什么用微博图床

    首先说下最初为什么使用微博图床存储图片

    • 免费
    • 稳定
    • 支持 HTTPS
    • 全网 CDN 加速

    当然,微博图床也不是没有缺点,首先就是控制权在微博手里,人家说不让你用,你就用不了了;其次,据说上传到微博图床的图片,会加上肉眼看不见的水印,当然,这个跟前者比起来无足轻重。

    2、图片到底应该存到哪儿

    既然微博图床已经挂了,那么图片到底应该存到哪儿呢?

    我的理解是,除非把图片上传到自己的服务器,否则,总是被别人抓着脖子,说断头就断头。

    首先,要把图片的源文件备份好,这样即使换图床挂了也不怕。我从最开始写文章开始,每一篇文章的图片,都按文件夹归类存储到电脑,然后自动同步到坚果云,双保险。数据的备份是很好的习惯,有时间讲下数据备份的一些事情。

    随后,我准备把文章的图片迁移到我的又拍云上,好处就是我哪怕换一个图片存储商,比如说七牛云,我只要把图片重新上传一下,再解析一下图片的域名即可。也有坏处,我得自己承担这部分费用了。

    以上就是由微博图床挂掉之后想到的一些东西,从中发现了不同平台对于数据的重视程度,对我很有启发,希望对读完此文的你也有所帮助。

    欢迎访问的个人博客:掘墓人的小铲子

  • 相关阅读:
    Oracle数据库的非归档模式迁移到归档模式
    对Dataguard的三种模式的理解
    RMAN中建立Catalog 用数据库的例子
    Oracle中实现dblink的作法
    expdp 简单例子
    Oracle单节点_Grid_Infrastructure_DB_安装过程图解(三/三)
    Oracle单节点_Grid_Infrastructure_DB_安装过程图解(一/三)
    Oracle单节点_Grid_Infrastructure_DB_安装过程图解(二/三)
    Oracle 安装过程中 File not found "WFMLRSVCApp.ear" 的原因
    基于Django的在线考试系统
  • 原文地址:https://www.cnblogs.com/juemuren4449/p/12382734.html
Copyright © 2020-2023  润新知