talvbansal / laravel-public-sftp
这是一个飞系统SFTP适配器的扩展,允许您配置一个公共URL以便文件可以访问。
dev-master
2017-05-02 14:08 UTC
Requires
- php: >=5.6
- league/flysystem-sftp: ^1.0@dev
Requires (Dev)
- orchestra/testbench: ^3.6@dev
- phpunit/phpunit: ^6.1@dev
- squizlabs/php_codesniffer: ^2.0@dev
This package is auto-updated.
Last update: 2024-09-20 07:37:37 UTC
README
这是一个sftp飞系统适配器的扩展,允许您配置一个公共URL以便文件可以访问。
简介
默认的sftp飞系统适配器没有获取磁盘上文件URL的方法,如果您尝试在磁盘实例上调用url()方法,将抛出RuntimeException
异常。
我编写了这个sftp适配器的扩展,以便我可以用我的media-manager包上传文件,并将文件存储在远程服务器上,同时仍然使它们可以在公共位置访问。
安装
要开始,通过Composer包管理器安装public sftp适配器
composer require talvbansal/laravel-public-sftp
在config/app.php
配置文件的providers
数组中注册适配器
\TalvBansal\SftpPublic\Providers\SftpPublicServiceProvider::class,
之后,将自动注册一个新的磁盘,名为public-sftp
。
配置
添加以下键中的相关配置以访问您的ssh服务器
SFTP_HOST=myserver.com
SFTP_USERNAME=username
SFTP_PW=password
SFTP_PRIVATE_KEY=/optional/path/to/private/key
SFTP_ROOT=/path/to/storage/folder
SFTP_PUBLIC_ROOT=https://public-url/to-folder-above
这里需要关注的新值是SFTP_PUBLIC_ROOT
,它应该是一个公开可访问的URL,用于服务SFTP_ROOT
文件夹的内容。
所以,如果您正在使用nginx或apache在example.com
域的https上通过https在服务器上提供/var/www/public
文件夹,值将如下所示
SFTP_ROOT=/var/www/public
SFTP_PUBLIC_ROOT=https://example.com
现在,您可以使用public-sftp
磁盘作为laravel中的文件系统,并且可以在磁盘实例上调用url()
方法来获取上传文件的公开可访问URL。
鸣谢
许可
MIT许可(MIT)。有关更多信息,请参阅许可文件。