前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >北方地区上传报错,incorrect zone, please use up-z1.qiniu.com

北方地区上传报错,incorrect zone, please use up-z1.qiniu.com

作者头像
全栈程序员站长
发布2022-07-19 09:59:25
4200
发布2022-07-19 09:59:25
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是全栈君。

Qiniu.php 文件中,两个重要方法

代码语言:javascript
复制
 /**
     * Qiniu constructor.
     * @param $accessKey
     * @param $secretKey
     * @param $domain
     * @param string $bucket
     * @param string $zone 默认华南机房
     */
    function __construct($accessKey, $secretKey, $domain, $bucket, $zone = 'south_china')
    {
        $this->accessKey = $accessKey;
        $this->secretKey = $secretKey;
        $this->domain = $domain;
        $this->bucket = $bucket;

        $config = $this->zoneConfig($zone);

        $this->up_host = $config['up'][0];  //读取第一个可用线路


    }
代码语言:javascript
复制
 protected function zoneConfig($key = null)
    {
        $arr = [
            //华东
            'east_china' => [
                'up' => array("up.qiniup.com", 'up-nb.qiniup.com', 'up-xs.qiniup.com'),
            ],
            //华北
            'north_china' => [
                'up' => array('up-z1.qiniup.com'),
            ],
            //华南机房
            'south_china' => [
                'up' => array('up-z2.qiniup.com', 'up-gz.qiniup.com', 'up-fs.qiniup.com'),
            ],
            //北美机房
            'north_america' => [
                'up' => array('up-na0.qiniup.com'),
            ]
        ];
        if ($key !== null) {
            if (isset($arr[$key])) {
                return $arr[$key];
            } else {
                throw new \Exception('区域不存在');
            }
        }
        return $arr;
    }

默认使用的是华南机房;所以在调用的时候,改用华北机房就好

代码语言:javascript
复制
$qiniu = new Qiniu(Product::AK, Product::SK, Product::DOMAIN, Product::BUCKET,'north_china');
代码语言:javascript
复制
 //上传图片
    public function upload()
    {
        if ($_FILES['Product']['error']['cover'] > 0) {
            return false;
        }

        $qiniu = new Qiniu(Product::AK, Product::SK, Product::DOMAIN, Product::BUCKET,'north_china');
        $key = uniqid();
        $qiniu->uploadFile($_FILES['Product']['tmp_name']['cover'], $key);
        $cover = $qiniu->getLink($key);
        $pics = [];
        foreach ($_FILES['Product']['tmp_name']['pics'] as $k => $file) {
            if ($_FILES['Product']['error']['pics'][$k] > 0) {
                continue;
            }
            $key = uniqid();
            $qiniu->uploadFile($file, $key);
            $pics[$key] = $qiniu->getLink($key);
        }

        return ['cover' => $cover, 'pics' => json_encode($pics)];
    }

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/111583.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年2月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档