按流量付费的图片 CDN 如果想坑你是不是毫无办法?

2018-10-09 13:33:55 +08:00
 nikoo
个人有一个练手作品,一个采集二手信息的网站,里面有一些物品的图片,之前就存在 VPS 上

后来由于某图片 CDN 大力宣传加发送代金券,就把新采集的图片上传至该图片 CDN

网站从未推广,放了几年,最后统计访问量每天几百,没挣过一毛钱

代金券消耗完后,邮件告诉我欠费了,一看账单近百,
我就很奇怪,网站明明没有那么大访问量,仅图片为什么能跑这么多流量?

开始怀疑是搜索引擎爬历史图片,或图被盗用了,所以做了如下操作:
1、每天通过 API 删除两个月以前图片的定时任务,也就是存在该 CDN 上只有近两个月的图片
2、最严格的防盗链,referrer 限制为仅唯一本域名可打开图片,none 都无法打开,也就是直接帖图片 URL 在浏览器是打不开的

本来以为有用,结果网站访问量不见升,CDN 账单破百了。

我就很奇怪,然后脑抽做了这么一个东西:
开启 nginx 针对所有图片的 access log,然后写了一个脚本统计每天具体访问图片的 request
然后针对这个 request 的 response size 统计出一个总流量来
这样我就知道每天到底图片流量跑了多少了

结果弄完才意识到,真是脑抽了,我在用高大上的图片 CDN 啊!!!
它只有一次的请求后就把图片缓冲在它一万个节点里去了,然后再也不会访问我的 nginx 了,它一万个节点不知道哪个节点跑的流量都会跟我算钱,并且我也根本没法统计流量被什么客户端跑走了。

想了想,非常绝望,图片被它的节点缓冲了,那么是不是它说跑了多少流量就是多少?
有没有任何方法可以验证真伪?玩的就是一个诚信?
2976 次点击
所在节点    问与答
23 条回复
nikoo
2018-10-09 15:07:29 +08:00
@kslr 这个"下载凭证"在我理解就是传统的 DRM,但我不太明白怎么实现不维护 AccessToken

比如两个客户端 A、B 在同一时间点访问同一页面上的图片 /a.jpg

那么这个 A 与 B 是分别获得了
A 获得 http://*.com/a.jpg?e=过期时间&token=AToken
B 获得 http://*.com/a.jpg?e=过期时间&token=BToken

还是 A 与 B 同时获得一个同样的
http://*.com/a.jpg?e=过期时间&token=Token

以上两者应是哪个?
kslr
2018-10-09 15:20:40 +08:00
@nikoo
因为在文档中“ MY_SECRET_KEY ”是一个固定值。
这取决于签名计算时带入的变量,比如不同的过期时间 token 也会不同
yc8332
2018-10-09 15:27:03 +08:00
你要在 cdn 上配置防盗链,而不是你的服务器上。。。还有 cdn 都会有日志的,难道你都不看。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/495922

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX