使用 nginx 负载均衡+多个云的免费额度打造免费 markdown 图床

2019-04-12 13:25:42 +08:00
 xiebruce

由于有自己的 博客,并且是用 markdown 写文章,所以自然就要用到“图床”,刚开始只使用一个云的对象存储做图床,但由于我博客 gif 图较多且大多都是几 M 甚至达到 10M,所以一个云的免费额度的流量无论如何都是不够的,于是我想到了用多个云的免费额度,再用 nginx 统一做负载均衡,把本来请求一个云对象存储的流量,分散到多个云中,这样的好处是:

而问题也有,如果我们按以上的方法,很显然每次上传图片要同时上传到每个云中,这怎么实现呢?

详细配置过程,请直接查看我博客:使用 nginx 负载均衡+多个云的免费额度打造免费 markdown 图床

15819 次点击
所在节点    Markdown
36 条回复
gamexg
2019-04-12 15:49:43 +08:00
@xiebruce #16 可以 301 跳转的,另外如果对方反外链,可以通过 iframe 或 meta referrer 规避。
xiebruce
2019-04-12 16:46:06 +08:00
@ThirdFlame @gamexg 感谢两位,我试了一下,确实可以,这个我之前一直以为在页面内部是不可以做的呢,那这样的话,是不是流量就没有走我自己的服务器了?网页内部图片 301 过多会不会造成一些问题?
xiebruce
2019-04-12 19:09:16 +08:00
@ThirdFlame @gamexg 我搞清楚了,301,302 虽然可以跳转,但由于很多云自带域名并不支持 https,会导致我的 https 小锁不显示,而是显示成“不安全”,这么看来,还是得使用 proxy_pass 的方式,具体请看: https://www.xiebruce.top/644.html#return-302-2
MonoLogueChi
2019-04-12 20:37:35 +08:00
@xiebruce 哪里有这种流量大空间小的机器,我也想搞一台
foru17
2019-04-12 20:47:55 +08:00
这种情况有木桶效应,还不如 DNS 层 CNAMEX 负载靠谱
xiebruce
2019-04-12 23:27:20 +08:00
@MonoLogueChi Virmach 吧,现在最便宜的好像是 25 刀一年,我买的时候 17.5 刀
xiebruce
2019-04-12 23:29:12 +08:00
@foru17 你说的木桶效应是?
msg7086
2019-04-13 01:16:53 +08:00
在国内,流量远远比硬盘贵。
如果放在国外,那总体收益远远小于正常搭建的方式。
xiebruce
2019-04-13 05:32:09 +08:00
@msg7086 我只是个人博客使用(或者是没有博客单纯 markdown 软件写 md 文档也可使用),并没有什么收益之说呀。我确实用的是国外的服务器。
msg7086
2019-04-13 07:09:25 +08:00
@xiebruce 我的意思是,这么多功夫花下去并没有每月多花一点小钱租个硬盘空间大点的机器来得划算。

图床一开始的目的就不是存储,而是提供分发流量。现在你数据全部走代理,丧失了图床 99%的作用。
你服务器放在国外的话,弄个 Google Drive 或者 OneDrive 的账号,直接挂载在服务器上存数据就是了,没有必要走这样的弯路。
HuasLeung
2019-04-13 08:30:31 +08:00
有点南辕北辙……不过年轻就是各种捣鼓才有意思
c00WKmdje2wZLrSI
2019-04-13 09:21:23 +08:00
@xiebruce 你这是 virmach ?速度还行啊,我一开始还以为是国内的服务器
xiebruce
2019-04-13 18:57:26 +08:00
@xiebruce 是的,在西雅图,做了缓存嘛
xiebruce
2019-04-13 19:16:53 +08:00
@msg7086
1、就我自己来说,我认为的划算就是少花钱,所以我觉得我这个很划算,而你说的要花钱就显得不划算。
2、我的目的就是有地方存图,方便获取外链,我现在博客图片用着挺好,所以我有点理解不了“丧失了图床 99%的作用”这句话,如果说流量问题,我不缺流量,如果说速度问题,我图片加载也不见得慢到忍受不了(事实上加载还是挺快的),所以我是感受不到“丧失了图床 99%的作用”。
3、google drive 和 onedrive 直接挂载我还真的是第一次听说,以前都不知道,去查了一下确实是可以挂载到 linux 机器上,这样倒也是一种方法,但其实这种挂载的方法也是有缺点的,就是只能用于博客,如果用于其他 md 文档什么的要获取 md 外链应该还是比较麻烦吧,不过还是感谢你的建议!
msg7086
2019-04-14 05:33:13 +08:00
@xiebruce 我提 GD 和 OD 是因为既然你已经打算流量走本地了,与其用图床反代,不如直接把文件存在网盘上,让 Nginx 直接读就行了。
xiebruce
2019-04-14 13:05:21 +08:00
@msg7086 嗯,你说的这个直接挂载我之前是不知道可以这么做的,就博客存图来说,其实这样做倒是挺方便,就是其他地方存图没这么方便了,比如我用 md 软件写文档,但貌似也可以给我的图床工具写个功能,让我能用“右击图片→点击上传→得到 md 外链→去 md 软件上粘贴” 这样的方式来方便的得到 md 外链,以后有时间我再试试,再次感谢你的建议,让我知道了这种方法,我之前真不知道能这么挂载网盘😄。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/554435

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX