本文的主要目的在于使用阿里云OSS的同时保留本地媒体库。
当然你可以直接使用URL的方式插入图片,但是假如你非要通过媒体库上传到OSS的话,那么就开始折腾吧。
为什么要保留本地媒体库?
主要是因为穷,且站点流量不大。
有一些频繁使用的基本图片,比如站点图标、作者头像、背景图片、打赏二维码等等,需要经常读取,而阿里云的外网流量是要付费的……再者,如果以后不用阿里云了,或者忘记续费停止服务了,至少站点的基本图片还是能够正常显示的……
另外就是,服务器在国内,不需要考虑图片加载速度;流量小,不需要考虑带宽和用户体验……
那为啥还要用OSS?直接放本地不好吗?
主要是为了方便备份以及缩减备份文件大小……
宝塔面板是可以直接备份到阿里云OSS的,当然通过WordPress插件备份到OneDrive之类的地方也可以。大部分图片不放在本地,备份包自然就小了。
为了实现本地媒体库和OSS共用,我总共尝试了四款插件,基本把插件商店里支持阿里云的试了个遍,最终终于找到一款基本可以满足我需求的插件,它的名字就叫Aliyun OSS。不过这款插件好像没有在WordPress插件商店中上架,需要自行安装。
下面一个个说,先把体验差的拿出来鞭尸。
插件一:OSS Upload(不推荐)
这款插件的下载量最多,功能也比较多,设置复杂一点没什么,但是我总觉得基础功能有问题,主要集中在略缩图的几个选项,会导致历史文章中的图片无法显示。阿里云OSS支持URL后缀添加参数处理图片,但是插件中的参数好像有问题。
虽然%2F
的URL解码确实为/
,我也不知道问题出在哪里……
插件二:WPOSS(不推荐)
更新时间11月前……有点久远了。
功能比较平淡,能实现基础功能,但是没什么亮点。
插件三:OSS Aliyun(待观望)
这款插件应该是刚上线不久,版本比较原始,下的人也不多,基础功能已经有了,期待后期完善更多功能。
插件四:Aliyun OSS(使用中)
这款插件最大的亮点就是支持排除文件。举个例子,假如我们设置需要排除的文件为/basicimg/,只要文件名中包含basicimg,它的URL前缀就会使用WordPress自己的域名,而不是使用OSS域名。这样的话我们可以把需要保留在服务器本地的文件名中加上basicimg即可。
这款插件没有在WordPress插件商店中上架,下载地址:GitHub传送。
不同上传方式对OSS文件的影响
在开启OSS插件、不保留本地文件、不上传略缩图的设置前提下:
- WordPress后台-媒体库上传:只上传到OSS,且只上传一张图片。删除时OSS也删除。
- 文章编辑器-上传按钮:弹出Windows文件选择窗口,同时上传到本地服务器和OSS,且上传很多不同尺寸的略缩图。删除时本地图片全部删除,OSS只删除一张原图,残留许多不同尺寸的略缩图。
- 文章编辑器-媒体库-上传:与“WordPress后台-媒体库上传”效果相同。
- 文章编辑器-文件直接拖拽到正文:与“文章编辑器-上传按钮”效果相同。
- 文章编辑器-
Ctrl+V
直接粘贴图像:与“文章编辑器-文件直接拖拽到正文”效果相同。
以上结论经过本人亲测。这些上传方式之间的微妙差异消磨了我多少光阴啊……泪流满面.jpg
也就是说,如果想正常上传到OSS,还是只能通过媒体库页面或者媒体库悬浮窗来操作——依然毫无效率可言,和阿里云OSS控制页上传再复制链接消耗时间差不多,而且还没法添加图片样式后缀……
蓦然回首……
然而当我折腾完这一切后,我发现了更高效的上传方式——天若OCR截图+PicGo上传,电脑层面的软件,搭配快捷键比WordPress手动上传快多了,而且很方便的自动复制链接且带有图片样式后缀……我现在从截图到上传再到复制链接只需要按两组快捷键,比如Alt+1
,Alt+2
,两秒解决问题……
So,那我要这个插件有啥用哩……URL直链它不香吗?