将BCS的bucket文件保存到本地[PHP]
作者:matrix 发布时间:2015-06-03 分类:兼容并蓄 零零星星
收到百度BCS 6月30日停服提醒邮件,说是要停止服务,请自重。让咱BCS迁移到BOS...
BCS的bucket是以前创建bae时设置的,保存了一些图片文件
怎样把云存储的文件备份到本地是一个问题啊。毕竟一个一个下载太麻烦,文件有些多。。。
BCS控制台:http://developer.baidu.com/console#app/project
打开BCS控制台可以查看你的bucket名称以及API Key 和Secret Key。如果里面的文件有点多,且你想保存下来
下载 :http://pan.baidu.com/s/1mgMhp92
使用说明:
请确保解压后有个空的TTSEE文件夹,它用来存放下载的文件
只能保存一个bucket里面的文件,bucket有多层文件夹应该(我没试过)能正常使用的。
//$bcsobj->list_object_by_dir($bucket,'/',$list_model = 2);
解压后配置好bcs/conf-inc.php参数:项目对应的AK 公钥和SK私钥(百度开发者中心里复制)
调用:127.0.0.1/download.php?bucket=bucket名称
php中用到了file_put_contents函数:
$file = file_get_contents('http://bcs.duapp.com/newbuck'.$objest);//读取远程文件
file_put_contents('TTSEE'.$objest,$file);//保存到同级TTSEE目录
参考:
http://www.cnblogs.com/m199/p/3450675.html
http://www.jb51.net/article/57127.htm
PS:
150710后续更新
把bcs文件下载到本地电脑后再上传到主机空间。
之后用sql语法批量替换旧url。
UPDATE wp_posts
SET post_content = ( Replace (post_content, 'bcs.duapp.com/newbuck/', 'www.hhtjim.com/wp-content/uploads/2015/bcsfile/') )
WHERE Instr(post_content, 'jpeg') > 0
OR Instr(post_content, 'jpg') > 0
OR Instr(post_content, 'gif') > 0
OR Instr(post_content, 'png') > 0
参考: