问题标签 [flysystem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2028 浏览

laravel - 流明存储 - FileNotFoundException

我添加flysystem到 Lumen 以便我可以使用StorageFacade。

我添加了正确的config文件,然后我正在尝试:

配置:

我越来越:

FileNotFoundException /var/www/storage/a.html

该文件存在于该位置。

有什么线索吗?

0 投票
0 回答
880 浏览

symfony - 强制从 AWS S3 下载 Flysystem 读取的文件

大家,早安,

我的问题很简单,我使用 Flysystem(在 Symfony 上)从 S3(通过 DigitalOcean)恢复资源。我希望能够将其返回给用户下载。这是我的代码:

=> 文件已损坏...

有任何想法吗?非常感谢您的帮助。纪尧姆

更新当我检查文本文件时,我收到了文件的内容,但带有标题:

仅下载文件内容和所有文件类型的任何想法?非常感谢你们,纪尧姆

0 投票
1 回答
1226 浏览

php - League CSV 包 - 从资源/流中一次读取一行

我正在使用PHP League CSV导入器/导出器在 Laravel 中导入一个大型 CSV 文件。由于文件很大,我想将它流式传输到 CSV 解析器并一次处理一行,而不是将每一行都加载到内存中。

Laravel 使用 flysystem 作为底层文件系统,我正在使用它来获取源 CSV 的 PHP 资源。

我不明白的是,如果可能的话,我如何将该资源流提供给 League CSV,以便它一次读取一行供我处理,然后再读取下一行。所有文档似乎都暗示 CSV 文件总是被完全读入内存,这就是我想要避免的。

我需要使用回调吗?如果是这样,我如何确定流资源一次只根据需要读取一行,而不是一次读取?

我猜我从创建一个流阅读器开始?

0 投票
0 回答
183 浏览

php - 测试连接

我很好奇是否有人知道用更可取的自定义超时测试连接的方法。我有一个页面,其中索引了不同的磁盘以供在进一步处理中进行选择。一个磁盘使用 sftp,该磁盘随机卡住,因此应用程序无法连接并引发错误。

我正在寻找一种方法来抑制错误并让用户选择目前可以索引的其他文件。

我使用标准的 laravel 存储外观。并且已经尝试过这样的事情:

$disk = Storage::disk($project->category->FileServer->name); $adapter = $disk->getDriver()->getAdapter(); $adapter->connect();

这样做的问题是连接总是为空。

0 投票
0 回答
31 浏览

server - 从网络服务器连接到 SFTP 服务器/防火墙问题

我正在尝试通过 Phpleagues Flysystem 连接到远程 SFTP 服务器。

远程 SFTP 服务器的防火墙只允许我们的网络服务器的 IP 地址。

据我了解,当客户端访问我们的网站时,客户端的 API 请求会发送到我们的后端网络服务器。该网络服务器依次向远程 SFTP 服务器发送请求。但是,这似乎不起作用,我假设从我们的网络服务器发送的请求是使用客户端的 IP 地址发送的(而不是来自我们的网络服务器的)。

是否可以选择使用我们的网络服务器的 IP 地址将内部请求从网络服务器发送到 SFTP 服务器以通过防火墙?

(当我从我们公司网络发送请求时,它确实有效,其 IP 地址也注册在远程 SFT 服务器的防火墙中。当我从另一个网络尝试时,相同的请求失败。)

0 投票
0 回答
454 浏览

laravel - 连接过早关闭

我有一个应用程序,它从 CSV 获取数据作为集合并发送到 SFTP 路径。我正在使用这个flysystem-sftp,一切正常,突然开始出现“连接过早关闭”错误,因为我的工作将文件发送到SFTP。我的代码没有任何改变。

SFTP 服务器使用私钥进行身份验证。有人可以帮我找出问题 来自 bugsnag 的错误跟踪 来自 bugsnag 的错误跟踪

0 投票
2 回答
796 浏览

php - 使用 Flysystem 和 ZipAdapter 在 Symfony4 中创建 ZIP 文件时出错

介绍

在我的个人项目中,我正在使用:

Flysystem 的文件操作在project_dir/public文件夹和project_dir/data文件夹中都可以正常工作。

问题

当我尝试在public目录中创建 ZIP 存档时出现错误:Could not open zip archive at:zip:\\test123\my_zip_test.zip, error: 5.

我的代码

创建 ZIP 文件的控制器

更新 1

由于 ZIP 文件在public文件夹中创建,因此不必担心无法访问。

更新 2

当我Flysystem mount manager用来轻松管理跨相同文件系统但不同位置的文件时,我也想对 ZIP 文件使用相同的设置。

更新 3

发现ZipAdapter使用PHP ZipArchive. 文档中有错误代码。所以我的问题:error 5 = read error

最后

我错过了什么吗?

感谢您的想法和建议!

0 投票
1 回答
821 浏览

php - 如何在 php 中修复“未捕获的错误:在 null 上调用成员函数 insertOne()”

我按照此处介绍的解决方案https://stackoverflow.com/a/36041188/11295637创建了一个新的 csv 文件并将大型 csv 文件的特定列提取到新文件中。但是,我收到此错误:未捕获的错误:在 null 上调用成员函数 insertOne()。

代码如下:

问题是新变量未定义。我也试过

但我得到了同样的错误。

0 投票
1 回答
180 浏览

php - AwsS3Adapter 异常出现在本地但不在开发服务器中

我在本地从事 Laravel 项目,突然开始出现以下异常:

ErrorException in FilesystemManager.php line 193: Class 'League\Flysystem\AwsS3v3\AwsS3Adapter' not found (View: /Users/mypetproject/resources/views/layouts/topheader.blade.php) (View: /Users/mypetproject/resources/views/layouts/topheader.blade.php) (View: /Users/mypetproject/resources/views/layouts/topheader.blade.php)

这个版本在服务器上运行没有任何问题。只是为了验证,我检查了相同的分支,比较composer.jsoncomposer.lock文件,它们在本地和服务器上是相同的,做了一个composer update以防万一,它仍然在本地失败,但在服务器中没有。.env文件也是一样的。

FilesystemManager位于 vender/laravel/framework/src/Illuminate/Filesystem 中,并且确实尝试过,use League\Flysystem\AwsS3v3\AwsS3Adapter as S3Adapter;但是在服务器上运行的版本也是如此。

请注意,我根本没有使用 S3,而且我真的不想安装league/flysystem-aws-s3-v3,因为我没有使用它。

知道有什么问题吗?

这是我的 composer.json

0 投票
0 回答
404 浏览

php - 使用 sftp laravel 在远程服务器上创建一个目录

我正在尝试在远程服务器上创建一个新目录并设置该目录的权限。

但是,它似乎不起作用。

下面的行创建目录本身,但目录。权限始终是744.

我如何更改对目录的权限,因为我已经使用public?