首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SSL问题--使用FlySystem3.x的Laravel 9在调用AWS S3的Storage ()方法时无法检查是否存在?

SSL问题--使用FlySystem3.x的Laravel 9在调用AWS S3的Storage ()方法时无法检查是否存在?
EN

Stack Overflow用户
提问于 2022-04-14 19:57:01
回答 2查看 2.3K关注 0票数 0

我有一个laravel项目,我刚刚升级了从8.x到最新的9.x。作为升级的一部分,它还需要许多其他的组件,如文件系统(我猜称为flysystem),也要从1.x升级到3.x。我有一行代码正在导致我的系统崩溃:

代码语言:javascript
运行
复制
if (Storage::disk($disk)->exists($avatarFilename)) {

这种方法以前一直有效,但现在又回来了:

代码语言:javascript
运行
复制
ERROR: Unable to check existence for: avatars/31-feea15debc.png
[stacktrace]
#0 D:\\vhosts\\vendor\\league\\flysystem-aws-s3-v3\\AwsS3V3Adapter.php(157): League\\Flysystem\\UnableToCheckExistence::forLocation('avatars/31-feea...', Object(Aws\\S3\\Exception\\S3Exception))
#1 D:\\vhosts\\vendor\\league\\flysystem\\src\\Filesystem.php(48): League\\Flysystem\\AwsS3V3\\AwsS3V3Adapter->directoryExists('avatars/31-feea...')
#2 D:\\vhosts\\vendor\\laravel\\framework\\src\\Illuminate\\Filesystem\\FilesystemAdapter.php(174): League\\Flysystem\\Filesystem->has('avatars/31-feea...')
#3 D:\\vhosts\\app\\Models\\User.php(1120): Illuminate\\Filesystem\\FilesystemAdapter->exists('avatars/31-feea...')
#4 D:\\vhosts\\scoutek.com\\storage\\framework\\views\\eb5469bb9d755dff931d80dd79d9a76a9a7a2a21.php(10): App\\Models\\User->getAvatar()

在深入挖掘了我的Laravel日志文件中报告的数千行代码之后,我发现了以下内容,这似乎是导致异常的原因:

代码语言:javascript
运行
复制
(Aws\\S3\\Exception\\S3Exception(code: 0): Error executing 
\"ListObjects\" on 
\"https://scoutek-development.s3.amazonaws.com/?prefix=avatars%2F31-feea15debc.png%2F&max-keys=1&delimiter=%2F&encoding-type=url\"; 
AWS HTTP error: cURL error 60: SSL certificate problem: 
unable to get local issuer certificate 
(see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for 

我使用了OpenSSL并创建了我的密钥和证书文件,并在apache文件中引用了它们。当我运行phpinfo()时,我可以看到我在创建证书时输入的所有本地主机证书数据,因此它看起来是知道证书的。我运行的是WAMP 3.2.3,PHP8.1.5,Apache2.4.46

EN

Stack Overflow用户

发布于 2022-08-17 11:26:56

如果其他人有同样的问题,但上面的解决方案并没有为您解决这个问题:

在升级到Laravel 9之后,我也遇到了同样的错误。结果,我们把$variable = false传递给了Resource::cloud()->exists($variable)检查,这在最新版本中已经不再支持了。因此,一件好的事情是反复检查是否将一个受支持的值传递到这个函数中。

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71877015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档