Closed nottellyou closed 3 years ago
一般是配置错误或权限不足。可以单独运行以下代码验证。
$adapter = app('filesystem')->disk('cosv5')->getAdapter();
$client = $adapter->getCOSClient();
$client->upload(
$adapter->getBucketWithAppId(),
'avatar/1',
'content'
);
或者有没有什么办法可以打印出日志?当前查到这一步返回false后,就查不下去了。vendor里的代码又修改不了。
我在本地上传成功了,到了服务器就只能得到false结果,而且服务器也能从cos上通过curl命令取得图片并保存在服务器上。
现在一点头绪都没有,希望能在这里看到一丝线索。
我在本地上传成功了,到了服务器就只能得到false结果,而且服务器也能从cos上通过curl命令取得图片并保存在服务器上。
现在一点头绪都没有,希望能在这里看到一丝线索。
在服务器上运行上述代码再测试下
你好,在服务器上运行结果如下:
`Qcloud\Cos\Exception\ServiceResponseException: Access Denied. in file /app/vendor/qcloud/cos-sdk-v5/src/Qcloud/Cos/ExceptionMiddleware.php on line 61
能否帮忙看看是什么原因导致的?
AccessDenied 签名或者权限不正确,拒绝访问。
先检查下 config/filesystems.php
配置文件是否正确;
再在服务器上运行 php artisan tinker
打印 config('filesystems')
看看运行时配置是否正确;
配置确认无误的话,核对下密钥是否正确。
如果是子账户密钥需要配置好相关权限。详细参见 https://cloud.tencent.com/document/product/436/56637#cos-.E6.8A.A5.E9.94.99-accessdenied.EF.BC.8C.E8.AF.A5.E5.A6.82.E4.BD.95.E5.A4.84.E7.90.86.EF.BC.9F
你好,换成你的代码后,确实可以上传文件了,但在服务器上最大只能上传15K的文件,超过这个限制,就无法上传了。本地一切正常。
感谢@freyo的支持,基本上已经确定是nginx配置的问题了。
你好,$disk->put('avatars/1', $fileContents); 调用后会返回false,请问这是什么问题呢?