ucloud云计算实现cdn文件上传
在下就是渣渣雪啦。这几天整cdn文件上传整了好久,宝宝心里很是着急啊,看文档一顿瞎瞅,所以一定要总结一下不至于以后再掉坑里。也给大家借鉴一下。
因为一个项目要有几百万张,数据量特别大,我用的是tp5框架,这时候存到本地是特别可怕的一件事情,所以是时候使用云存储了,其实对于ucloud我最初是拒绝的,因为我想着我的cto写多好,他写我就可以避免这个问题,哈哈,然而未能幸免。所以一件事情,做过了就都会觉得很简单,洒洒水了,不过我觉得明天依然有无穷无尽的bug需要我改,这是一个程序员改变不了的宿命。
首先你学习一个东西,你得有一个好的文档,不然真的是把你带的越来越远,只能挖个坑,埋个土。https://docs.ucloud.cn/storage_cdn/ufile/tools这个是ucloud的官方文档,你得入门就在这里开始了。
然后你使用人家的php sdk得引入人家的文件吧?所以在文档中找sdk下载
点击进去之后克隆下载到本地解压一下就ok了
下载 解压
解压之后的文档结构是这样的
有demo和ucloud两个文档,见名识意,demo就是示例代码啦,当时我还傻傻的百度呢,实际上人家已经都告诉你杂用的了。
这delete.php是用来删除图片的,get.php就是叫你咋调用这些方法的,multipart.php就是大文件上传咯,mupload.php是切片上传,将一个文件给你切成n片再给你攒起来,这就牛逼了。
ucloud才是这里的真正主角,所以你在把ucloud引入文件的时候,只需要放这一个目录就可以啦。我选择把他放在vendor目录下了,这是为啥捏?因为好引呗,直接vendor('ucloud/proxy');就可以啦,为啥不放在think里面呢?当然也ok了,只要你能引得到就可以了
那么现在问题来了,引入了如何配置呢?真让人头疼,哪里去获取这些配置项啊?我的内心有一万个疑问和草泥马在奔跑,遇到问题就是辣么不想淡定,像个智障,哈哈。
我看到这个目录中的配置,我在想这个空间域名后缀到底要不要改,当然终于在我文件上传一次有一次的404不命中以及各种错之后,最后的答案是当然要改了,从哪里看空间域名后缀呢?首先你得有一个ucloud的账号,登录进去。直接搜ucloud登录就可以了,登录之后选择产品与服务里面的对象存储
然后创建存储空间,前提是你要实名认证才能用,要传上字节的身份证号,身份证照片,银行卡号,这是个人认证,还可以进行企业认证,大概几分钟认证完之后你就可以存储了
你得主要你创建的空间类型,如果是公开的是都可以访问的,私有的是外部访问不了的,除非你有公钥和私钥。
可以直接在这里面进行文件上传,也可以在项目中调用他的方法
还有配置里面的公钥和私钥是在产品与服务中-操作管理-API密钥里面生成的,每个用户唯一而且不会改变
获取你的公钥和密钥填入你的conf.php中就能使用了。
写了个示例代码
$bucket就是你在创建存储空间时候的空间存储域名,写啥就是傻就行了,$key是你要上传的文件名,历史经验告诉我,文件名是绝对不能重复的,重复了传不上,所以你可以使用一个uniqid()获取当前毫秒数给他加在文件名里面。然后就是调用他的方法传入这些参数就可以了。其中$data['ETag']是这个文件的路径,和这个路径一样,访问这个路径就可以展示图片,文档的话就直接给你下载了,然后将这些路径存到你的数据库就可以了。
其实真的就是一个接口的调用而已,很简单,洒洒水啦。所以我们要努力变得更优秀。我的最终目标是不加班,一个小时写完的代码,为什么要浪费一天的时间。that's not real life。加油
作者:落魄PHP女程序员
链接:https://www.jianshu.com/p/dd8b52156c9f
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
(资源库 www.zyku.net)
您可能感兴趣的文章
- 10-30免费自用图床,稳定极速图床
- 08-09解决腾讯云CDN跨域问题,has been blocked by CORS poli
- 05-18云服务商平台汇总大全
- 04-08Django 如何实现文件上传下载
- 03-14帝国CMS请查看目录权限是否为0777,文件上传不成功解决
- 09-10ckfinder 3.x 文件上传重命名修改方法
- 11-02使用 Cloudflare的CDN 来缓存音频和视频文件的方法
- 06-25UCloud
- 04-05Linux实现文件上传ftp服务器代码
- 03-10利用七牛云存储CDN服务给WordPress静态文件加速
- 01-12小说书屋-小说书屋应用软件功能介绍
- 09-28个人所得税关怀模式开启步骤分享
- 01-09卓越优化助手-卓越优化助手应用软件功
- 10-12OPPOK9pro怎么开启指纹解锁
- 07-08oppowatch回复微信消息方法
- 01-25python scipy.misc.imsave()函数的用
- 08-19卡片日记备份设置教程介绍
- 02-20Debian系统下安装PHP和Nginx环境
- 12-23HTML <bdi> 标签
- 09-15央视频全运会赛事回放查看教程分享
最近更新
阅读排行
猜你喜欢
- 09-23vivox70如何设置微信视频美颜
- 02-08苹果11天气预报无法显示解决方法
- 02-08华为手机应用锁设置方法
- 01-11来享WiFi-来享WiFi应用软件功能介绍
- 01-12致用历史-致用历史应用软件功能介绍
- 07-05Linux chown命令
- 09-27华为nova9关闭自动设置时间方法介绍
- 01-10巧飞工厂管理-巧飞工厂管理应用软件功
- 07-12帝国CMS7.5版“来源HASH验证”功能升
- 12-30荣耀智慧空间-荣耀智慧空间应用软件功