cnode社区静态资源域名改造
发布于 1 年前 作者 alsotang 9172 次浏览 来自 分享

cnode一直是使用七牛的对象存储和cdn加速服务,之前在七牛开启对象存储bucket是配域名的,现在由于审核或者安全方面的原因,七牛把那些配赠的域名都定义成了『测试域名』,给定了下线时间。所以cnode需要改造成自定义域名的方式来访问七牛的对象存储资源。

之前的社区通过 dn-cnode.qbox.me 访问用户上传资源,用 o4j806krb.qnssl.com 来访问网站的js和css等文件。

目前前者改成 static.cnodejs.org,后者改成 static2.cnodejs.org

改造范围包括:

  1. 所有帖子和回复中的图片地址
  2. 社区自有图片和js和css等资源地址

有问题请及时反馈哈,发邮件给我就好

25 回复

对 cnode 社区影响不大。对那些把 cnode 社区文章复制粘贴到其他地方的人的影响比较大。

前排支持

@justjavac 一开始就用自己的域名多好?

一开始就用自己的域名多好,然后再解析到CDN这样就不会有什么影响了。

顶一下

来自酷炫的 CNodeMD

楼上的垃圾留言都屏蔽用户了

怎么各种测试评论都跑这儿来了???

@Reviving-Pain 因为这是api拉取到的第一个帖子

之前写的一个monogo脚本,可以替换mongo数据库中所有的url。

var oldQiniuUrl = "https://old.com";
var newQiniuUrl = "https://new.com";
var cursor=db.getCollection('users').find({});
while(cursor.hasNext()) {
    var user = cursor.next();
    var avatar = user.avatar;
    if (avatar.indexOf(oldQiniuUrl)  !=  -1) {
        avatar = avatar.replace(oldQiniuUrl, newQiniuUrl);
        db.getCollection('users').update({"_id": user._id}, {$set: {"avatar": avatar}});
        print(user.email);
    }
}

var cursor = db.getCollection('topics').find({});
while(cursor.hasNext()) {
    var topic = cursor.next();
    var content = topic.content;
    if (content.indexOf(oldQiniuUrl) != -1) {
        content = content.replace(new RegExp(oldQiniuUrl, "gm"), newQiniuUrl);
        db.getCollection('topics').update({"_id": topic._id}, {$set: {"content": content}});
        print(topic.title);
    }
}

var cursor = db.getCollection('replies').find({});
while(cursor.hasNext()) {
    var replies = cursor.next();
    var content = replies.content;
    if (content.indexOf(oldQiniuUrl) != -1) {
        content = content.replace(new RegExp(oldQiniuUrl,"gm"), newQiniuUrl);
        db.getCollection('replies').update({"_id": replies._id}, {$set: {"content": content}});
        print(content);
    }
}

@nqdy666 cnode的帖子和回复中的图片我都这么替换了一遍

@alsotang 请教一个问题,七牛关联的域名,如果证书到期了,你这边是手动更新证书,还是说有什么自动证书续期的办法?

@nqdy666 我准备手动更新,毕竟它那个是要去web界面操作的,也不像 lets encrypt 可以本机自动更新。

static2起名这么不讲究的么

社区自己的用static,用户上传的用uploads或usercontents之类的哈哈

@jinceon 哈哈,确实没那么讲究

@alsotang 已封号处理

回到顶部