阿里云配置与大文件上传ossutil工具

第一步安装

环境准备

OSS PHP SDK适用于PHP 5.3以上版本。本文以PHP 5.6.22为例。

安装环境

您需要安装PHP和cURL扩展:

在Windows系统中,请参见Windows下编译使用阿里云 OSS PHP SDK来安装PHP和cURL扩展。在Windows环境中,如果提示找不到指定模块,请在php.ini文件中指定extension_dir为C:/Windows/System32/。

在Ubuntu系统中,请使用apt-get包管理器安装PHP的cURL扩展 sudo

#apt-get install php-curl。

在CentOS系统中,请使用yum包管理器安装PHP的cURL扩展 sudo

#yum install php-curl。

查看版本

通过php -v命令查看当前的PHP版本。

通过php -m命令查看cURL扩展是否已经安装好。

下载SDK

通过GitHub下载

历史版本下载

更多信息请参见OSS API文档。

说明 建议您使用最新版本的SDK。OSS

PHP SDK 2.0.0以下版本的文档请从此处下载。

安装SDK

您可以使用以下三种方式安装SDK:

composer方式

在项目的根目录运行composer

require aliyuncs/oss-sdk-php,或者在composer.json文件中添加依赖关系如下:

"require": {

    "aliyuncs/oss-sdk-php": "~2.x.x"

}

运行composer install,安装依赖。安装完成后,目录结构如下:

               ├── app.php

               ├── composer.json

               ├── composer.lock

               └── vendor

其中app.php是您的应用程序,vendor/目录下包含了所依赖的库。您需要在app.php中添加依赖关系如下:

require_once __DIR__ .'/vendor/autoload.php';

说明

如果您的项目中已经引用过autoload.php,则添加了SDK的依赖关系之后,不需要再次引入。

如果使用composer出现网络错误,可以使用composer中国区的镜像源。方法是在命令行执行 composer config -g repositories.packagist

composer http://packagist.phpcomposer.com。

phar方式

在GitHub中选择相应的版本并下载打包好的phar文件。

在代码中引入phar文件:

require_once '/path/to/oss-sdk-php.phar';

源码方式

在GitHub中选择相应版本并下载打包好的zip文件。

解压后的根目录中包含一个autoload.php文件,在代码中引入此文件:

require_once '/path/to/oss-sdk/autoload.php';


第二步 手动创建储存空间

1、   登录 OSS 管理控制台。

2. 、  如果目前 Bucket 列表为空,单击左侧存储空间列表中的创建 Bucket;若已创建过 Bucket,则单击左侧存储空间列表中的新增按钮+,或单击页面右上方的创建 Bucket

3、创建 Bucket 对话框配置 Bucket 参数。如下图:



第三步

文件上传

以下上传类用于上传文件到OSS:根据个人配置简单修改下可用


复制文件到oss

 

删除文件


判断oss服务器上是否有改图片


下载oss上的文件到本地


最后可能在项目开发中会遇到大文件上传缓慢问题,所以阿里云官方提供了几个专门解决大文件上传的工具具体可以看官方文档https://help.aliyun.com/document_detail/44075.html?spm=a2c4g.11186623.6.693.646c448aMbGxqD在这不说太多


我们项目用到的是:命令行工具ossutil

快速安装

根据您的操作系统选择对应版本的软件下载并配置ossutil。

Linux系统(以64位系统为例)

下载工具:

wget http://gosspublic.alicdn.com/ossutil/1.6.9/ossutil64                          

修改文件执行权限:

chmod 755 ossutil64

使用交互式配置生成配置文件:

./ossutil64 config

请输入配置文件名,文件名可以带路径(默认为:/home/user/.ossutilconfig,回车将使用默认路径。如果用户设置为其它路径,在使用命令时需要将--config-file选项设置为该路径):

未输入配置文件路径,将使用默认配置文件:/home/user/.ossutilconfig。

对于下述配置,回车将跳过相关配置项的设置,配置项的具体含义,请使用"help

config"命令查看。

请输入endpoint:http://oss-cn-shenzhen.aliyuncs.com

请输入accessKeyID:yourAccessKeyID

请输入accessKeySecret:yourAccessKeySecret

请输入stsToken:

endpoint:填写Bucket所在地域的域名信息,可参考访问域名和数据中心。

accessKeyID:查看方式请参考创建AccessKey。

accessKeySecret:查看方式请参考创建AccessKey。

stsToken:非必配项,若采用STS临时授权方式访问OSS需要配置该项,否则置空即可。stsToken生成方式参考临时访问凭证。


在php可以用以为方法调用:



//内网 oss-cn-shenzhen-internal.aliyuncs.com

public function doossutil($localPath,$ossPath) {//方法记得添加节点权限

    $command = ROOT_PATH. 'public/ossutil64  cp -rf '. ROOT_PATH. 'public/'. $localPath. ' oss://yr720/'. $ossPath.' -c /root/.ossutilconfig';

//./ossutil64 ls oss://examplebucket -c /home/config

    exec($command,$output);

$res = strstr($output[0],':',true);

if($res == 'Error') {

return false;

}else {

return true;

}

}

你可能感兴趣的:(阿里云配置与大文件上传ossutil工具)