七牛segmentfault问答系统整理笔记

如何使用七牛云存储来托管静态博客?利用七牛云存储简单托管静态网站的方法
http://www.jb51.net/yunying/420463.html



下载私有资源的时候老是返回  bad oauth request 
代码
token = Qiniu::RS.generate_download_token :expires_in => 300hash = URI.encode_www_form(token: token)redirect_to "#{url}?#{hash}"
如上,使用的是ruby的sdk但是返回的结果是 {"error":"bad oauth request"} . 这个是否是那里错了请指出.
generate_download_token 光指定 expires 是不够的,还必须指定 pattern

许式伟:影响我一生的五个重要选择

旧版七牛-developer平台:



七牛具体会对哪些文件做gzip压缩?
Q:经过测试发现不会对js文件进行压缩,请问具体支持哪些
A:支持 js 压缩的。只是 如果文件太小,则服务端可能会觉得压缩不是很经济,可能会返回未压缩的。


使用网站镜像后,对原网站有影响没?容易被搜索引擎识别为作弊手法吗?
可以给镜像空间独立提交一个 robots.txt 禁止搜索引擎收录。

七牛是否有一键清空空间所有文件的功能?
Q:有时网站做了较大的更新,需要一键清空空间所有文件,发现在浏览器中无法进行此项操作,而且也不能修改每页显示的文件数,一页页地去删除有点麻烦。文件比较多。
难道只有调用API的方法了?
A: 可以建一个新空间(新bucket),然后配上镜像,然后把域名从老的空间绑到新空间上。一切ok后删除老的空间。

如何下载、备份一个Bucket?
A: qrsb 的备份工具

空间上传整个文件夹:
可以用上传工具上传。比如:

我是新手,现在我希望php文件在自己的服务器上运行,域名比如www.baidu.com,然后我希望图片用七牛的,大概的流程是怎么做?
A: 这要分几种情况:
  • 图片是自己上传的
  • 图片是用户上传的(UGC)
对于自己产生的,比较简单,用七牛的上传工具:
上传完成后,可以得到一个访问地址,大概是这样的: http://<Bucket>.u.qiniudn.com/<Key> 。其中, <Bucket>  是你的空间名。 <Key>  是你文件相对于同步目录的路径。比如你的同步目录是 c:/syncDir ,你的图片是  c:/syncDir/images/logo.png ,那么  <Key>  就是  images/logo.png ,最终图片的访问地址就是  http://<Bucket>.u.qiniudn.com/images/logo.png
对于图片是用户产生(UGC)的情况,需要看用户用 Android/iOS/Web 还是什么,需要对接七牛相应平台的 SDK。详细可以到  http://docs.qiniu.com/  了解。




对于指定key上传的文件,七牛怎么解决并发资源竟争问题?
Q: 我想知道,在两个不同目录的两个相同文件,用指定key上传到七牛存储。如果两个进程同时上传这两个相同的文件到七牛,会发生什么情况?七牛怎么解次并发资源况争问题的?
A: 
分两种情况:
  1. 插入模式(uptoken.scope="<Bucket>"):此时谁先到听谁的,后来者返回file exists错误。
  2. 修改模式(uptoken.scope="<Bucket>:<key>"):此时谁后到听谁的,后来者覆盖前者的内容。

一个Bucket内文件数量的上限
没有限制

上传文件的Timeout
Q:请问,上传文件是否存在Timeout?如果有,是多少?如何设置?
A: 客户端上传文件的uptoken,是有一个expires字段的,默认是1小时。

七牛云存储,空间内文件更新后,别处访问的还是旧文件
Q: 七牛云存储,空间内文件更新后,别处访问的还是旧文件,包括本地同一台计算机从浏览器访问,异地另外一台计算机访问,都是访问的旧文件;而空间内的更新时间却是已经修改过来的。
A: 由于前置cdn的缓存,七牛的文件更新大概会滞后10~20分钟见效。


批量删除时遇到413错误
Q: RT 批量删除时遇到413错误,可以调高一次POST服务器端可接受的最大字节数吗?
A:建议分多次 batch 请求。我们无法区分攻击行为还是正常调用,所以每次请求一定会有上限的,这个上限无论调到多高都会有人觉得不够。

七牛有网站类的demo
看看这个样例: https://github.com/qiniu/form-upload

ueditor文本编辑器上传的图片如何提交到七牛云存储里?

七牛私有空间如何获取视频和图片的缩略图?
Q: 看了七牛的文档和 私有空间如何获取视频帧缩略图 ,不明白私有空间是如何从获取图片和视频的缩略图.试过了也不行,出现E404.
上述url是一个视频的地址. 但是如果要获取到这个视频的某个帧的缩略图,如何将vframe/png/offset/7/w/480/h/360放置,才能可以用上述url获取到视频的缩略图,还有download token是这样生成的吗?
如下: http://rambospace.u.qiniudn.com/01.mp4  和 vframe/png/offset/7/w/480/h/360 合一起签名的生成downloadtoken
A: 先生成带 fop 的 url,比如  http://rambospace.u.qiniudn.com/01.mp4?vframe/png/offset/7/w/480/h/360 ,然后再对这个 url 做 download token 签名就行。


请问哪里有flash的七牛上传客户端的demo?
看看这个符合要求不:
不是纯的 flash 上传,但是特定状态会退化到 flash
如果不能满足,可以看这里:
试验成功,代码片段: https://gist.github.com/mani95lisa/7912530



用七牛的持久化数据处理(persistent fop)技术自动存储缩略图。参见: http://docs.qiniu.com/api/v6/persistent-ops.html


七牛有图片压缩存储功能吗--saveas用法太麻烦
Q:我看了图片上传策略,持久化存储的相关部分,好像有个用GET签名请求实现的缩略图方案,太麻烦。
我想要这样的功能:我不想让服务器保存超过600K的图片,但也不想直接限制用户只上传600K以上的图片(这样会损失很多上传意愿,毕竟用户不愿意费时压缩图片后再上传),简单思路如下:
在上传策略里设置一个字段,可以指定图片压缩等级及图片压缩后最大值,
这样当用户上传了一个2M的原始图,传到七牛后,七牛直接根据策略里指定的压缩等级和最大值,将上传图压缩至目标图片(比如小于600K),然后存储下来。以后再访问都是这个压缩后的文件。
目前有这个功能吗?
A: 目前来说建议在服务端php里面做。七牛的上传支持callback到你的服务器地址,你在这个callback里面去调用saveas就行。因为saveas里面的sign只能用AK/SK做,这意味着在js端做这样的事情不太好,有安全隐患。
上传之前你肯定能拿到文件的大小譬如2M,加个逻辑如果小于600K,不加管道符处理,如果大于600K,持久化处理或者轻量级的saves对图片进行缩略处理


http://for-work.qiniudn.com/saveas.php  生成私有空间saveas的范例代码


上传了一首歌,用外链打开时不是下载,而是七牛的播放器播放的。请问如何设置成打开即下载?
在资源后面加上 ?download 。比如:







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值