惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
云风的 BLOG
云风的 BLOG
Google DeepMind News
Google DeepMind News
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 三生石上(FineUI控件)
V
Visual Studio Blog
爱范儿
爱范儿
宝玉的分享
宝玉的分享
人人都是产品经理
人人都是产品经理
大猫的无限游戏
大猫的无限游戏
博客园 - 聂微东
月光博客
月光博客
雷峰网
雷峰网
L
LangChain Blog
Stack Overflow Blog
Stack Overflow Blog
B
Blog RSS Feed
有赞技术团队
有赞技术团队
T
Tailwind CSS Blog
阮一峰的网络日志
阮一峰的网络日志
V
V2EX
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
C
Check Point Blog
N
Netflix TechBlog - Medium
罗磊的独立博客
博客园 - 司徒正美
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
F
Full Disclosure
Security Archives - TechRepublic
Security Archives - TechRepublic
V
Vulnerabilities – Threatpost
H
Help Net Security
博客园 - 【当耐特】
博客园_首页
Microsoft Security Blog
Microsoft Security Blog
小众软件
小众软件
Hugging Face - Blog
Hugging Face - Blog
L
Lohrmann on Cybersecurity
C
Cybersecurity and Infrastructure Security Agency CISA
P
Privacy International News Feed
Blog — PlanetScale
Blog — PlanetScale
C
CERT Recently Published Vulnerability Notes
P
Privacy & Cybersecurity Law Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Cisco Talos Blog
Cisco Talos Blog
K
Kaspersky official blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Cyberwarzone
Cyberwarzone
S
Schneier on Security
S
SegmentFault 最新的问题
C
Cyber Attacks, Cyber Crime and Cyber Security
S
Securelist

WAYJAM

告别 NPM Token:迁移到 Trusted Publishing 全记录 Sing-box:IPv6 优先出站与 Netflix 强制 IPv6 分流 [All In One] HomeLab 虚拟化 iKuai + Mihomo - IPv6 支持 [All In One] HomeLab 虚拟化 iKuai + Mihomo LiteLLM 多模型 API 中转 MacOS Bootstrp with Nix Fluency Support Full Rss [All In One] PVE 中 OpenWrt LXC 重启问题 Tabby 终端配置以及配置全平台同步 Cloudflare Tunnel + Nginx Proxy Manager:服务穿透 PVE 7 升级 8 笔记 PVE 安装 Android x86 & 安装 Magisk Fly.io 部署 Artalk 评论系统 [All In One] HomeLab 2023 搭建总结 [All In One] 轻量的文件 & 媒体服务器配置 [All In One] R71s 主机散热改造 [All In One] PVE LXC 安装 OpenWrt 软路由以及网络规划 [All In One] 安装 Proxmox VE 7.4 从零开始配置Rime - 2023 Self Hosted Bitwarden + Cloudfare HTTPS Debian NFS Server 以及 MacOS Client AdguardHome 和 Clash 透明代理配合使用 使用 Kind 部署 Prow 手记 PicGo Amazon S3 插件 自动给模板生成 Inline-Svg Hugo Theme WeUI 发布! Hugo Theme Fluency 发布! Docker Clash 和 透明代理 有限状态机与分布式熔断器 「家庭娱乐」N1刷 EmuELEC 做游戏盒子 「家庭娱乐」N1刷 Armbian 做家庭服务器 分布式限流器之令牌桶实现 Kustomize 管理 Kubernetes 集群 Mixedpaper 主题发布到 Hugo 官方仓库 About 优化 Docker 构建时间 解决 etcd 与 grpc 不兼容问题 Kubernetes 部署 ElasticSearch7 集群 从零开始配置Rime - 2019 转移域名,更换评论系统,更换图床 搭建 NPM Proxy 之预编译包 搭建 NPM Proxy 美区Apple ID终于绑定PayPal成功 无可奈何的页面增强方案 LogStash的调试 GitLab Shell如何通过SSH工作 Python打开类 荒原 [Theme] Bitcron主题Mixedpaper发布! Ngrok端口转发 故事之五 - 柠檬茶 故事之四 - 我是天才 故事之一 Arch滚挂了怎么办? OpenWrt内网IPv6之二 某次更新后Primusrun不能启动Dota2 OpenWrt的DNS智能解析方案 替换Google CDN库 使用Privoxy将socks代理转化为http代理 ArchLinux之软件篇 再次安装ArchLinux手记 博客再次重生 搞了个Minecraft服务器 【LnV工作室荣誉出品】小苹果MV华农大版 雨梦 醉臥石中笑人間 路由器内网IPV6地址分配 OPENWRT安装软件的两个问题 路由器上进行锐捷认证 改了BIOS的LOGO Windows下搭建我的C/C++的开发环境 Linux下用Mentohust认证校园网 Archlinux+Windows 双系统安装手记(UEFI+GPT) Google-code-prettify代码高亮 《末世迷踪》 Hello Net World!
BackBlaze B2 + Cloudfare Worker 图床
2021-02-19 · via WAYJAM

虽然国内的 OSS 存储速度快,且资费便宜,但基本上都取消了测试域名,绑定自定义域名需要域名已备案。 第三方的图床则迁移麻烦。BackBlaze B2 在大厂的对象存储里面是非常便宜的,且有一定的免费额度,加上与 Cloudfare 都在带宽联盟内,他们之间并不会消耗流量,所以用来做图床是个非常好的选择。

BackBlaze B2 收费情况:空间免费10G,超出后,超出部分 $0.005/GB/月;流量每日免费1G,超出后,超出部分 $0.01/GB

方案一:Cloudfare PageRules

  1. 域名配置 cname 解析到 B2 的 friendly URL 的域名
  2. 为避免其他人使用你的域名访问 B2,配置 PageRules 锁定访问的 Bucket

假设 bucket 为 my-pics,则配置规则:https://img.exmaple.org/file/my-pics/*

这种方案的问题是会暴露 bucket 名字。

参考 Using Backblaze B2 with the Cloudflare CDN

方案二:Cloudfare Worker

使用 Cloudfare Worker 的 CLI 工具 Wrangler

下载 S3 的模板项目

wrangler generate <projectname> https://github.com/obezuk/worker-signed-s3-template

可以使用 Wrangler 登录然后配置 wrangler.toml 直接 publish 部署,也可以手工编译:

然后将 ./dist/worker.js 文件内容复制到 Cloudfare 配置,然后配置 Worker 的环境变量:

image-20210219232543861

Worker 部署后即可使用绑定到 Worker 的域名访问 Bucket 内的图片了,这种方案比直接使用 fetch 请求 B2 的 friendly URL 的优势在于使用了 s3 signed 签名之后访问,bucket 可以设置为 private,安全性更好。

注意 AWS_DEFAULT_REGION 一定要配置,配置成空也行,否则脚本报错。

参考 Backblaze B2 and the S3 Compatible API on Cloudflare

反盗链

如果使用图床的站点域名与图床的域名相同(包括二级域名),那么只需要打开 Cloudfare 的 Scrape Shield 中的 Hotlink 保护即可。

否则需要 Cloudfare 防火墙判断 referer 是否在你的白名单内(HotLink 的阻止访问日志也会显示在防火墙内)。

表达式生成器貌似不能定义逻辑顺序,那么直接表达式就好了:

(http.request.full_uri contains "img.wayjam.me") and ((not http.referer contains "wayjam.me") or (not http.referer contains "example.com"))

image-20210219232422677

上传

使用 PicGo 配合插件 picgo-plugin-s3 使用。