今天来测测Laravel上使用sftp driver,如果您没用过,快来看看我测试的结果
顺便提一下,我们在Laravel的tinker环境中,进行Storage的功能很是方便的,不管是local或是远程。
调整完设置后,记得离开再进入。
本篇文章使用的Laravel版本如下:
dlaravel@4e1f08f98079:~/html$ artisan -V
Laravel Framework 9.40.1
Laravel的Storage sftp driver支持可以安装
composer require league/flysystem-sftp-v3 "^3.0"
然后我们就可以在config/filesystems.php,添加需要的driver,在这里我补了一个 ccc的SFTP driver
'disks' => [
'ccc' => [
'driver' => 'sftp',
'host' => '192.168.99.2',
'username' => 'dlaravel',
'privateKey' => '/home/dlaravel/.ssh/id_ed25519',
'port' => 2258,
'root' => '/var/www/html/storage/app/public',
'url'=>'https://www.ccc.tc/storage',
],
],
在这里,我们可以自定义把root设置在public
/var/www/html是我的Laravel的项目目录。
这样当我们要抓public目录下的文件时,就可以直接给images的目录了。
这个root依时际需求调整的,就我的情况,把root设置在public相当方便 。
在ccc disk的SFTP的driver中,我也设置了url,所以当我们使用Storage::url,
带入Storage::disk("ccc")→files列出的文件就能非常顺利的抓出远程图档的网址罗
备注,关於storage/app内的public数据夹,要开放给外部访问,记得要下命令创建软连结。
php artisan storage:link
No Comment
Post your comment