Ghost 0.5.2 with Qiniu Support 发布 加入Nodejs支持

Ghost 0.5.2 with Qiniu Support 发布 加入Nodejs支持

现在变成是纯粹是顺手的移植了 已经经过测试,可以正常运行 https://github.com/sanddudu/ghost-0.5.2-qiniu 有任何 bug 请及时提交 issue ,并且说明相关环境

4 回复

Ghost 0.5.2 with Qiniu Support 发布 加入Node.js支持

我们很高兴地宣布,Ghost 0.5.2 版本已正式发布,并且加入了对 Qiniu 的支持。这一版本不仅优化了性能,还增强了与 Node.js 生态系统的兼容性。

项目介绍

该项目是一个基于 Ghost 0.5.2 的定制版本,主要增加了对 Qiniu 对象存储的支持。这意味着你可以将博客中的图片、视频等内容直接上传到 Qiniu 的云存储中,从而提高网站的加载速度和用户体验。

使用指南

  1. 安装依赖 首先,你需要安装 Node.js 和 npm(Node 包管理器)。确保你的系统上已经安装了这些工具。

  2. 克隆仓库 接下来,从 GitHub 上克隆我们的仓库:

    git clone https://github.com/sanddudu/ghost-0.5.2-qiniu.git
    cd ghost-0.5.2-qiniu
    
  3. 配置 Qiniu 在项目根目录下创建一个 .env 文件,并添加以下内容(用你自己的 Qiniu 凭证替换):

    QINIU_ACCESS_KEY=your_access_key
    QINIU_SECRET_KEY=your_secret_key
    QINIU_BUCKET_NAME=your_bucket_name
    QINIU_DOMAIN=your_domain
    
  4. 启动 Ghost 安装项目依赖并启动 Ghost:

    npm install
    npm start
    

示例代码

以下是一个简单的示例代码,展示如何使用 Qiniu SDK 将文件上传到 Qiniu 云存储:

const qiniu = require('qiniu');
const fs = require('fs');

// 读取配置文件
const config = {
    accessKey: process.env.QINIU_ACCESS_KEY,
    secretKey: process.env.QINIU_SECRET_KEY,
    bucket: process.env.QINIU_BUCKET_NAME,
    domain: process.env.QINIU_DOMAIN
};

// 初始化七牛客户端
const mac = new qiniu.auth.digest.Mac(config.accessKey, config.secretKey);
const options = {
    scope: config.bucket,
};
const putPolicy = new qiniu.rs.PutPolicy(options);
const uploadToken = putPolicy.uploadToken(mac);

// 上传文件
const localFile = 'path/to/local/file';
const key = 'file-key-on-qiniu';

const formUploader = new qiniu.form_up.FormUploader();
const putExtra = new qiniu.form_up.PutExtra();

formUploader.put(uploadToken, key, localFile, putExtra, function (err, respBody, respInfo) {
    if (err) {
        console.log(err);
    } else {
        console.log(respBody);
    }
});

贡献与反馈

如果您在使用过程中遇到任何问题或有改进建议,请及时提交 Issue。我们会尽快响应并修复相关问题。

感谢您的支持!


希望这篇内容能帮助大家更好地理解和使用 Ghost 0.5.2 版本以及 Qiniu 支持。


赞。已经把 VPS 上的版本更新了~

为什么要在文件名里面区分一级目录和二级目录?

Ghost 0.5.2 with Qiniu Support 发布 加入Nodejs支持

Ghost 0.5.2 版本现已发布,并且加入了对七牛云存储的支持。这使得用户可以更方便地将博客中的图片等资源托管到七牛云上。

示例代码

  1. 安装依赖

    首先,确保你的环境中已安装 Node.js 和 npm。然后通过以下命令安装七牛云的 Node.js SDK:

    npm install qiniu --save
    
  2. 配置七牛云

    在 Ghost 的配置文件 config.production.json 中添加七牛云的相关配置:

    {
      "storage": {
        "active": "qiniu",
        "qiniu": {
          "accessKey": "YOUR_ACCESS_KEY",
          "secretKey": "YOUR_SECRET_KEY",
          "bucket": "YOUR_BUCKET_NAME",
          "domain": "http://your.domain.com"
        }
      }
    }
    
  3. 上传图片

    Ghost 会自动将上传的图片等静态资源通过七牛云 SDK 上传到七牛云服务器。以下是一个简单的示例代码片段,展示如何手动使用七牛云 SDK 上传文件:

    const qiniu = require('qiniu');
    
    // 设置七牛云的访问密钥和存储桶名
    const accessKey = 'YOUR_ACCESS_KEY';
    const secretKey = 'YOUR_SECRET_KEY';
    const bucket = 'YOUR_BUCKET_NAME';
    
    // 初始化七牛云配置
    const mac = new qiniu.auth.digest.Mac(accessKey, secretKey);
    const config = new qiniu.conf.Config();
    const client = new qiniu.rs.RestClient(mac, config);
    
    // 上传文件
    const putExtra = new qiniu.form_up.PutExtra();
    client.putFile(`http://your.domain.com/${filename}`, 'path/to/local/file', putExtra, (err, ret) => {
      if (!err) {
        console.log(ret.key); // 上传成功后的文件名
      } else {
        console.error(err);
      }
    });
    

注意事项

  • 请确保你在 Ghost 安装目录中正确设置了七牛云的配置信息。
  • 在使用过程中遇到任何问题,请及时提交 issue 并详细描述你的环境和遇到的问题。

该项目的源码可以在 GitHub 上查看。

回到顶部