【产品公告】关于青云升级对象存储免费政策通知

尊敬的用户

您好!

为了感谢广大用户长期以来对青云对象存储服务的支持,青云自 2018 年 4 月 1 日起实施新的对象存储免费政策,具体策略如下:

  • 存储空间 30 GB
  • 下载流量 11 GB
  • 读请求 100  万次
  • 写请求 10  万次

免费政策 从用户创建的存储空间之日算起,在未来  12  个月免费赠送

如对新的免费政策有疑问,可联系我司:

青云邮箱: jianhuzhu@yunify.com
咨询服务热线:400-8576-886  转  2

青云QingCloud 推出 QingStor™ 对象存储本地盘 for Linux

QingStor™ 对象存储本地盘 for Linux( 又名 qsfs )是 Linux 平台上访问 QingStor™ 对象存储的挂载工具。 通过 qsfs 您可以将 QingStor™ Bucket 挂载到本地文件系统中,您可以便捷地通过本地文件系统操作 QingStor™ Bucket 中的对象,实现数据的共享。

产品功能

  • 支持 POSIX 文件系统大部分功能,包括文件和目录的读写,软链接操作等。
  • 通过 QingStor™ 对象存储的 multipart 和 byte-range get 功能并行的上传和下载大文件。
  • MD5 校验保证上传数据的完整性。

主要特性

  • 高可靠、高可用,依托 QingStor™ 对象存储,提供高可靠、高可用的在线文件存储。
  • 无限水平扩展,可承载无限存储空间,存储空间的容量可无限扩展。
  • 简单易用,可直接通过本地目录的操作方式对 QingStor™ 对象存储中的文件、文件夹进行增加、删除、修改、查看等操作。
  • 开机自动挂载,开机时可自动启动并挂载到相应的 QingStor™ 对象存储存储空间 (Bucket) 中。

支持平台

为提供更好的兼容性, qsfs 基于 boost 1.49.0 进行开发,可支持较低版本编译器 ( GCC 4.1.2 以上 ) 和较老的操作系统平台。支持如下的主流的 Linux 发行版:

  • CentOS 5.8 及以上的 32 位和 64 位平台
  • Ubuntu 12.04 及以上的 32 位和 64 位平台

典型应用场景

  • 数据迁移或备份
    在对象存储实际数据迁移过程中,QingStor™ 对象存储为企业开发者提供了 qscamel、qsctl、SDK 等丰富的开发工具支持,但在实际数据迁移的场景中,有些场景不支持二次开发或者不支持命令行工具,通过 QingStor™ 对象存储本地盘,操作挂载的目录即可直接访问 QingStor™ 对象存储,方便进行数据的迁移、文件批量上传或下载。
  • 应用系统无缝对接对象存储
    在企业应用系统和对象存储的对接过程中,为了解决应用系统对接对象存储,往往需要修改应用程序代码。但如果不便于修改应用系统程序,使用 QingStor™ 对象存储本地盘,即可实现和 QingStor™ 对象存储无缝对接,应用系统即刻拥有海量的数据存储空间。

  • 个人用户磁盘扩容
    个人用户的电脑磁盘容量普遍比较有限,通过 QingStor™ 对象存储本地盘将QingStor™ 对象存储的存储空间挂载为本地目录后,可水平无限扩展本地磁盘容量。

使用指南

https://docs.qingcloud.com/qingstor/developer_tools/qsfs

青云QingCloud 推出 QingStor™ 对象存储本地盘 for Windows

QingStor™ 对象存储本地盘 for Windows(又名 ElasticDrive)是 Windows 平台上访问QingStor™ 对象存储的一种客户端软件,由 QingStor 为其提供无限容量的在线文件存储空间,而不占用本地磁盘空间。 通过 ElasticDrive 您可以像操作本地磁盘(例如C盘、D盘等)一样方便、快捷地访问或存取 QingStor™ Bucket 中的各种类型文件,其运行后如下图(其中F盘对应着 QingStor™ 的某个 Bucket)所示:

产品功能

  • 运用与 Windows 操作系统无缝链接的虚拟磁盘技术,将 QingStor™ 对象存储中的某个 Bucket 挂载为本地磁盘的一个分区。
  • 通过操作本地磁盘的方式对 QingStor™ 对象存储中的文件进行增加、删除、修改、查看、复制、粘贴等操作,并将操作结果即时同步到 Bucket 中。

支持的平台

  • Windows 7、Windows 8.1、Windows 10 的 32/64 位平台。
  • Windows Server 2008 R2、Windows Server 2012 R2、Windows Server 2016 等三种服务器平台。

主要特性

  • 高可靠、高可用,依托 QingStor™ 对象存储,提供高可靠、高可用的在线文件存储。
  • 无限水平扩展,可承载无限存储空间,存储空间的容量可无限扩展。
  • 简单易用,可直接通过本地磁盘的操作方式对 QingStor™ 对象存储中的文件、文件夹进行增加、删除、修改、查看等操作。
  • 开机启动,开机时可自动启动并挂载到相应的 QingStor™ 对象存储存储空间 (Bucket) 中。

应用场景

  • 数据迁移或备份,QingStor™ 对象存储为企业开发者提供了 qscamel、qsctl、SDK 等丰富的开发工具支持,但在实际数据迁移的场景中,有些场景不支持二次开发或者不支持命令行工具,就需要一种不用做二次开发或者输入命令行工具的方式,通过 QingStor™ 对象存储本地盘将 QingStor™ 对象存储的存储空间挂载为服务器平台下的磁盘后,再通过挂载的磁盘直接访问 QingStor™ 对象存储,进行数据的迁移、文件批量上传或下载。例如,在 Windows 服务器运行 FTP 服务器,这种场景下比较适合部署 QingStor™ 对象存储本地盘 for Windows(ElasticDrive),FTP 服务器接收到用户数据,将数据同步到 QingStor™ 对象存储,完成数据的同步。
  • 应用系统无缝对接对象存储,企业为了解决应用系统对接对象存储,往往需要修改应用程序代码,把对文件系统的读写改成调用对象存储 SDK。但如果不便于修改应用系统程序,依然想要使用对象存储作为存储后端,可以使用 QingStor™ 对象存储本地盘,实现和 QingStor™ 对象存储无缝对接,使应用系统即刻拥有海量的数据存储空间。
  • 个人用户磁盘扩容,个人用户的电脑磁盘容量普遍比较有限,通过 QingStor™ 对象存储本地盘将 QingStor™ 对象存储的存储空间挂载为本地磁盘或文件系统后,可以扩展用户个人电脑的本地磁盘容量,相当于增加一个可水平无限扩展的磁盘,作为一个类似于网盘的方式进行使用。

使用指南:https://docs.qingcloud.com/qingstor/developer_tools/elastic_drive

QingStor 对象存储新增 C/C++ SDK

截止目前, QingStorTM 对象存储官方已经发布了包括 Go、Ruby、Swift、Java、JavaScript、PHP、Python、Scala  和 .NET  九种 SDK。为了向 C/C++ 开发者提供更好的支持,QingStorTM 对象存储于近日正式发布 C/C++ SDK。

C/C++ SDK 通过开源的 QingStorTM  对象存储的 API Specifications(OpenAPI 格式,亦称 Swagger 2.0 )及 SDK 生成工具 Snips 来生成相应的 SDK 接口和公共基础部分,在 Snips 的帮助下使其能够在短时间内开发出符合生产环境使用的 SDK 。同时大大降低 SDK 的维护成本,保证各语言版本的 SDK 与最新的官方 API 保持一致。C/C++ SDK 同时提供了标准 C 和 C++ 两套接口,接口内部逻辑用 C++ 统一实现,为了提供更好的兼容性,未使用 C++ 11 特性,能够支持较低版本的编译器和较老的平台运行时环境。

下文为简要使用文档,更多详细信息请参见 https://github.com/yunify/qingstor-sdk-cpp 及  https://docs.qingcloud.com/qingstor/sdk/cpp

1. 安装

本 SDK 目前仅支持源码编译安装方式:

  • 安装需要的依赖

Windows 平台:

需要 Visual Studio 2013 或更高版本

自行下载或编译安装 curl(libcurl.lib)
和 openssl(libeay32.lib 和 ssleay32.lib)
相关的第三方库,并手动关联到 Visual Studio 解决方案中.

Linux 平台:

需要 GCC 编译器 4.1.2 或更高版本

安装 SDK 依赖的第三方库的: libcurl 和 libopenssl 。

在 Debian/Ubuntu 系列系统请使用以下命令安装

> sudo apt-get install libcurl4-openssl-dev libssl-dev

在 Redhat/Fedora 系列系统请使用以下命令安装

> sudo yum install libcurl-devel openssl-devel
  • 下载源代码
> git clone https://github.com/yunify/qingstor-sdk-cpp.git
  • 编译步骤

1.安装 CMake 工具

2.建立 build 目录:

> cd BUILD_DIR > cmake <path-to-root-of-this-source-code>

执行以下命令以编译 Release 版本:

> cmake -DCMAKE_BUILD_TYPE=Release  <path-to-root-of-this-source-code> 
> make 
> sudo make install
  • 编译标准C接口

SDK 默认编译不生成标准 C 接口,如果你希望编译包含标准 C 接口的 SDK ,请执行以下命令:

> cmake -DBUILD_C_STYLE_INTERFACE=ON  <path-to-root-of-this-source-code>

本SDK提供了 C 和 C++ 两套接口,这两套接口在使用上方式上有所差别,请您阅读相应的使用说明文档,了解具体细节。

2. 快速开始

我们分别为使用标准 C 接口和 C++ 接口提供了两个示例项目,实例项目展示了如何使用 SDK 的几个常用 API 接口,同时展示了如何使用CMake工具构建此项目的过程。
访问地址为:
更多的使用API的细节,请参考以下文档:

青云QingCloud 推出 PCDN 服务 内容分发成本直降 50%

日前,青云QingCloud 宣布推出 P2P 内容分发网络——PCDN 服务(了解详情:http://t.cn/R8lqbWG),在 CDN 产品的基础上融合新一代 P2P 技术,充分利用边缘网络海量碎片化的计算、存储、网络等闲置资源构建低成本、高质量的内容分发网络服务。QingCloud PCDN 通过创新的分发网络优化技术和精准的智能调度系统,在为用户提供稳定、高质量的分发加速服务的同时,显著降低分发成本。与传统 CDN 相比,QingCloud PCDN 价格最高降低 50%,带宽最高节省 90%,适用于视频直播、视频点播及大文件下载等业务场景。

青云QingCloud 推出 PCDN 服务

在纷繁复杂的网络世界中,内容服务提供商需要将用户访问的内容以最快的速度、最稳定的性能呈现在用户面前。CDN(Content Delivery Network)即内容分发网络,就是这样一种被广泛应用的技术。但 CDN 核心仍然基于集中服务器架构,与地域化管制紧密相连,很难降低扩展成本。

为了进一步降低 CDN 的成本,提升内容分发网络的稳定性,青云QingCloud 推出 PCDN 服务。相对于传统 CDN 单节点、单链路的方式,PCDN 采用多点对单点、多链路的方式,避免节点故障给网络带来的影响,使整个传输过程更加稳定,并且 PCDN 调度系统会根据质量优先、兼顾成本的原则,对各级节点进行合理配比。

青云QingCloud PCDN 服务提供弹性的流媒体边缘加速技术和全面的视频点播技术,不仅能够支持对时延有极高要求的互动直播场景,如互动直播、电视台直播、赛事直播等,也支持长视频点播,热度较为集中的短视频点播,如视频门户网站、网络电视台、在线教育网站、游戏视频网站、动漫视频网站、OTT TV 等。此外,配合 QingStor 对象存储,PCDN 服务能够有效降低回源和存储成本,适用于应用市场分发、在线音频分发等文件下载场景。

青云QingCloud CTO 甘泉表示,此次推出的 PCDN 服务,针对稳定性与经济性进行双重优化,以满足企业用户对高质量流媒体内容分发业务的需求。结合 QingStor 对象存储音视频编转码服务,还可以进行音视频转码、转格式、压缩等数据处理服务,以更完整的解决方案加速企业实现业务创新。

“免费使用特权”火热预约中!活动期间提交使用申请,审核通过即可获得两周的免费使用特权。立即申请:http://t.cn/R8lqbWG

青云QingCloud 推出融合PCDN

PCDN是以CDN技术、P2P技术和P2P节点资源为基础,利用边缘网络的海量碎片化闲置资源而构建的低成本、高品质内容分发网络服务。通过集成PCDN SDK,能获得等同或高于CDN的分发质量,同时显著降低分发成本,适用于视频点播、直播、大文件下载等业务场景。

产品功能

  • 融合的加速技术

通过创新的P2P分发方式,数据在边缘节点进行快速共享,可提高数据流转率,并节约大量的带宽成本。整合传统CDN与P2P加速技术,双重网络边缘加速,并选择最优路径进行分发,保证无缝的流量传输体验。

  • 灵活的SDK策略

SDK下载和免SDK下载

  • 海量的节点覆盖

百万量级服务节点覆盖全国各区域,带宽储备达到10Tbps量级,拥有主流运营商的独立专线。

  • 广泛的平台支持

支持Android / iOS / OTT / Flash / HTML5等系统平台,点播支持 mp4 / flv / HLS / ts / MPEG-DASH 等文件类型;直播支持 rtmp / http-flv / HLS / udp / rtsp / MPEG-DASH 等协议,支持拉流和推流。

  • 创新的优化技术

将分发节点按照地理位置和运营商维度分组,组内成员构成网络,将流量分发局部化,减少跨运营商的网络流量。通过优化的UDP协议,实现UDP协议的可靠性传输,提高了弱网环境下传输稳定性及传输效率。

  • 精准的智能调度

准确识别访问用户的IP地址,地理位置,网络运营商归属,即时筛选出距离最近,路径最优的边缘节点进行分发。监测到终端加速效果变差或状态异常时,链路实时切换到更优的服务节,保障用户体验。

  • 多重安全保障

融合传统CDN的保护机制,提供防盗链、防DDoS攻击、黑白名单等安全措施。分发节点的数据采用分片缓存和高强度加密,防止内容被篡改。采用Token防盗链双重校验机制对URL请求中的时间戳和鉴权字符串进行双重校验,符合条件的客户端才能接入服务。

  • 全方位服务监控

管理控制台实现自主化加速配置,提供下载质量分析、下载行为分析等全透明化实时数据监控,便于掌握在线用户下载内容的行为和趋势,为用户大数据分析提供丰富的数据支撑。

应用场景

场景一:音视频点播

QingCloud提供音视频上传、编转码、媒体资源管理、分发加速一体化的视频点播解决方案,帮助快速搭建稳定、流畅、弹性的音视频点播平台,助力用户在获得高质量点播服务的同时有效降低带宽成本。QingCloud PCDN成本只有纯CDN方案的50%,在流畅率、首播时间和播放成功率性优于纯CDN方案,支持长视频点播,热度较为集中的短视频,例如; 视频门户网站、网络电视台、在线教育网站、游戏视频网站、动漫视频网站、OTT TV 客户等。配合QingStorTM对象存储音视频编转码服务,还可以进行音视频转码、转格式、压缩等数据处理服务。

推荐方案:PCDN+ QingStorTM 对象存储+音视频编转码

场景二:互动直播

QingCloud PCDN提供直播加速服务,支持对时延要求高的互动直播场景,如:互动直播、电视台直播、赛事直播等场景。在与纯CDN相当的延迟下,PCDN提供高分享率的 P2P 直播,助力客户提供优质的交互直播体验。支持的文件格式如:flv、ts、hls、rtmp等,支持多分辨率,满足客户在不同设备如手机、平板、和PC等多终端播放的需求。

场景三:大文件下载

QingCloud PCDN提供大文件下载优化加速分发,支持的文件格式有apk、lz4、exe、zip 、mp4、flv、ts、hls等。QingCloud PCDN采用创新的P2P分发方式,数据在边缘节点进行快速共享,确保用户获得更快的下载速度;利用分段缓存技术提高了大文件下载传输的稳定性。配合QingStorTM对象存储一起使用,可有效降低回源和存储成本。建议超过1MB且热度集中的文件采用PCDN分发,如应用市场分发、在线音频分发等。

推荐方案:PCDN+ QingStorTM 对象存储

产品使用地址为:https://docs.qingcloud.com/product/network/pcdn

 

 

QingStor™ 对象存储对接第三方图普科技鉴黄服务

QingStor™ 对象存储已经支持对接第三方数据处理服务,并接入了图普科技鉴黄服务。

QingStor™ 对象存储利用内部的异步数据处理框架,当有指定的对象上传成功时,会自动生成事件消息并触发各种数据处理。例如当用户开启了图普鉴黄服务,则会调用鉴黄 API 对指定的上传对象进行鉴黄识别,在识别流程结束后,识别结果将被回传,并推送到用户指定的通知地址中。

在操作层面,用户只需要在 QingStor™ 对象存储的控制界面中,一键选择开启服务并完成配置,服务即可自动开始运行。
开启图普鉴黄式例:

1. 在 console 中点击进入对象存储用户的某个具体 bucket 页面,点击 tab【数据处理】。

2. 列表中找到“图普鉴黄”,点击右侧按钮【点击开启】,在输入框“接收结果地址” 中写入用户自己的 notifiy_url ,以及“文件名匹配规则“中输入鉴黄目标的 glob patterns 。


以以上示例图的开启配置为例,每当有 jpg, jpeg, png 为后缀的对象上传成功后,将会对其进行鉴黄,并把结果推送到 http://example.notify.com 。

结果示例:

{
    "bucket": "fakebucket",
    "object": "porn.jpeg",
    "result": {
        "54bcfc6c329af61034f7c2fc": {
            "fileList": [
                {
                    "label": 2,
                    "name": "porn.jpeg",
                    "rate": 0.9836746454238892,
                    "review": false
                }
            ]
        },
        "code": 0,
        "message": "success",
        "nonce": "0.2297668219538047",
        "reviewCount": 0,
        "statistic": [
            0,
            0,
            1
        ],
        "timestamp": 1498647797834.0
    }
}

以上返回结果表示图片 “porn.jpeg”  被鉴定为正常图片的概率为 98%, 且不需要人工 review 。

参考: 图普鉴黄服务说明文档 。

QingStor 对象存储新增 Logstash Input/Output 插件

QingStor Logstash Input/Output 插件为首届 QingStor Satellites 活动中成功孵化出的项目,在 QingStor Satellites 活动中,QingStor 团队会选择一些有意义的开源项目为课题,并作为导师指导高校学生逐步完成项目。

QingStor Logstash Input/Output 插件的开发者为 Tacinight,来自兰州大学信息科学与工程学院 DSLab 研究生一年级的同学 赵益民(下图即为赵益民同学近照)。

QingStor Logstash Input/Output 插件已经通过 QingStor 官方审核,并被收纳为 QingStor 官方的 Logstash 插件,后续将由 QingStor 官方与赵益民同学一起进行维护。

下文为简要使用文档。更多详细信息请参见 https://github.com/yunify/logstash-input-qingstor 和 https://github.com/yunify/logstash-output-qingstor

Logstash 简介

Logstash 是一款轻量级的日志搜集和处理工具,可以方便的把分散的、多样化的日志收集起来,并进行自定义的处理,然后传输到指定的目标,比如输出到 Elasticsearch 或者写入文件。Logstash 整体可大致分为三部分,即数据输入(Input)、数据加工(Filter)、数据输出(Output),同时 Logstash 内置了多种输入输出插件,方便用户对接各种第三方服务。QingStor Logstash Input/Output 插件实现了对象存储服务和 Logstash 的对接,方便用户读取存储在对象存储的日志或者上传处理后的日志到对象存储。

安装

首先确保 Logstash 已正确安装,之后使用以下命令从 Ruby Gems 安装插件。

$ bin/logstash-plugin install logstash-input-qingstor
$ bin/logstash-plugin install logstash-output-qingstor

快速开始

使用插件之前请先在 青云控制台 申请 Access Key。

Input 和 Output 插件的基本配置项如下,查看更多可用选项可访问 GitHub 项目页面进行查阅。

input {
    qingstor {
        access_key_id => "your_access_key_id"
        secret_access_key => "your_secret_access_key"
        bucket => "input_bucket_name"
        region => "pek3a"
    }
}
output {
    qingstor {
        access_key_id => "your_access_key_id"
        secret_access_key => "your_secret_access_key"
        bucket => "output_bucket_name"
        region => "pek3a"
    }
}
设置完成之后启动 Logstash,即可从对象存储读取日志文件,然后按照固定大小或固定时间切分并归档,最后输出处理后的日志文件到对象存储。
$ ./bin/logstash -f qs_input_ouput.conf

致谢

最后对 QingStor Logstash Input/Output 插件的作者 Tacinight (赵益民同学) 表示感谢,同时我们也欢迎更多高校学生或第三方开发者参与到我们的开源项目中来。

QingStor 对象存储新增 .NET SDK

QingStor 对象存储到目前为止已经发布了包括 Go、Ruby、Swift、Java、JavaScript、PHP、Python、Scala 等八种语言的 SDK,为了方便 .NET 平台的用户使用 QingStor 对象存储服务,现特新增 .NET SDK。

QingStor .NET SDK 通过开源的 QingStor 对象存储的 API Specifications(OpenAPI 格式,亦称 Swagger 2.0 格式)及 SDK 生成工具 Snips 来生成相应的SDK接口和公共基础部分,在 Snips 的帮助下使其能够在短时间内开发出符合生产环境使用的SDK。

下文为简要使用文档,更多详细信息请参见 https://github.com/yunify/qingstor-sdk-net

1. 安装

可通过以下三种安装方式任意一种安装。

  • 直接下载源码并将其添加至项目:
$ git clone https://github.com/yunify/qingstor-sdk-net.git
  • 直接添加 DLL 引用:
在 GitHub 的 Release 页面 下载相应版本的 DLL,然后将其添加至项目引用。由于此 SDK 
依赖于 Json.NET,可以添加该 SDK 对应版本的 Newtonsoft.Json.dll 引用或者使用 
NuGet来安装它:
Install-Package Newtonsoft.Json
  • 通过包管理器(NuGet)安装:
例如在 Visual Studio 2013 中,打开 NuGet 程序包管理器搜索 QingStor_SDK_NET 
或者在控制台中键入以下命令(其中,QingStor_SDK_NET45 表示 .NET Framework 4.5 
平台下的SDK):
Install-Package QingStor_SDK_NET45

2. 初始化服务

发起请求前首先建立初始化服务:

using QingStor_SDK_NET.Common;
using QingStor_SDK_NET.Service;

CConfig Config = new CConfig("Config.yaml");
CQingStor Service = new CQingStor(Config);

上面代码初始化了一个 QingStor Service。

3. 获取账户下的 Bucket 列表

CListBucketsOutput ListBuckets = Service.ListBuckets(null);

// Print the HTTP status code.
// Example: 200
Console.Write(ListBuckets.StatusCode);

// Print the bucket count.
// Example: 5
Console.Write(ListBuckets.count);

4. 创建 Bucket

初始化并创建 Bucket, 需要指定 Bucket 名称和所在 Zone

CBucket Bucket = Service.Bucket("bucket-name", "pek3a");
CPutBucketOutput PutBucketOutput = Bucket.Put();

5. 获取 Bucket 中存储的 Object 列表

CListObjectsOutput ListObjectsOutput = Bucket.ListObjects(null);

// Print the HTTP status code.
// Example: 200
Console.Write(ListObjectsOutput.StatusCode);

// Print the key count.
// Example: 0
Console.Write(ListObjectsOutput.keys.Length);

6. 创建一个 Object

CPutObjectInput PutObjectInput = new CPutObjectInput();
PutObjInput.Body = new FileStream("/tmp/Screenshot.jpg", FileMode.Open);
CPutObjectOutput PutObjectOutput = Bucket.PutObject("Screenshot.jpg", PutObjectInput);

// Print the HTTP status code.
// Example: 201
Console.Write(PutObjectOutput.StatusCode);

7. 删除一个 Object

CDeleteObjectOutput DeleteObjectOutput = BucketObj.DeleteObject("Screenshot.jpg");

// Print the HTTP status code.
// Example: 204
Console.Write(DeleteObjectOutput.StatusCode);

8. 设置 Bucket ACL

CGranteeType Grantee = new CGranteeType() { id = "usr-id", type = "user" };
CACLType ACL = new CACLType() { grantee = Grantee, permission = "FULL_CONTROL" };
CPutBucketACLInput PutBucketACLInput = new CPutBucketACLInput();
PutBucketACLInput.acl = new CACLType[] { ACL };
CPutBucketACLOutput PutBucketACLOutput = Bucket.PutACL(PutBucketACLInput);

// Print the HTTP status code.
// Example: 200
Console.Write(PutBucketACLOutput.StatusCode);

QingStor 对象存储发布 WordPress 插件

QingStor 对象存储的 WordPress 插件为首届 QingStor Satellites 活动中成功孵化出的项目,在 QingStor Satellites 活动中,QingStor 团队会选择一些有意义的开源项目为课题,并作为导师指导高校学生逐步完成项目。

QingStor 对象存储的 WordPress 插件的开发者为 yungkc,来自兰州大学信息科学与工程学院二年级的同学 杨壬 (下图即为杨壬同学近照)。

QingStor 对象存储的 WordPress 插件已经过 QingStor 官方审核,后续将由 QingStor 官方与杨壬同学一起进行维护。

下文为功能简要介绍及使用文档。更多详细信息请参见 https://github.com/yunify/wp-qingstor

主要功能

  • 手动或定时备份 WordPress 全站到 Bucket 指定前缀,并发送邮件通知
  • 添加文件到媒体库时,自动上传文件至 Bucket 的指定前缀
  • 支持在文章渲染时自动替换本地媒体文件的 URL 为相应 Bucket URL
  • 可以一键同步媒体库(一般为 wp-content/uploads)文件夹内的所有文件,方便网站迁移

安装方式

可选以下三种安装方式中的任意一种

  • 通过 WordPress 控制台 FTP 安装
  • WordPress 仓库下载 zip 包,然后解压至 wordpress/wp-content/plugins 目录即可
  • 通过 Github 的安装略有不同,因为 Github 的版本没有包含 QingStor SDK,所以安装后,要进入 QingStor 插件目录并运行以下命令:
$ composer install

使用方式

  • QingStor 设置

首先要填写 ACCESS KEY ID SECRET ACCESS KEY,以及 Bucket 名称,这三项需要在 QingCloud 控制台 手动创建。

选项 “自动设置存储空间策略” 会使插件自动设置所填 Bucket ACL “公开只读”,以及设置存储空间策略为禁止对备份文件所在前缀进行任何操作。通常该选项可以保证媒体文件的可读和备份文件的安全,如非必要,无需修改。

  • 上传设置

设置要自动上传到 Bucket 的文件后缀名以及指定 Bucket 前缀,该前缀应该与备份文件的前缀严格区分,否则会影响存储空间策略的设置。如果有多个 WordPress 站点使用了同一个 Bucket,建议为每个站点设置不同的前缀。

自动替换文件 URL:打开该选项之后,插件就会在文章渲染时自动替换本地媒体文件的 URL Bucket 上对应的文件 URL

  • 备份设置

这部分的功能很容易使用,根据需要设置好时间保存即可。指定前缀和上传设置的基本要求一样。

致谢

最后对 WordPress plugin 的作者 yungkc (杨壬同学) 表示感谢,同时我们也欢迎更多高校学生或第三方开发者参与到我们的开源项目中来。