博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ftp配置 Laravel上传文件到ftp服务器
阅读量:4704 次
发布时间:2019-06-10

本文共 3112 字,大约阅读时间需要 10 分钟。

listen=YESanonymous_enable=NOlocal_enable=YESwrite_enable=YESlocal_umask=022dirmessage_enable=YESuse_localtime=YESxferlog_file=/var/log/vsftpd.logchroot_local_user=YESchroot_list_enable=YESchroot_list_file=/etc/vsftpd.chroot_listsecure_chroot_dir=/var/run/vsftpd/emptypam_service_name=ftprsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pemrsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.keyssl_enable=NOutf8_filesystem=YESuse_localtime=YESconnect_timeout=60accept_timeout=60max_clients=8max_per_ip=8#主动模式port_enable=YESconnect_from_port_20=NOftp_data_port=21pasv_promiscuous=YES#被动模式#pasv_enable=YES#pasv_min_port=30000#pasv_max_port=30001

 

用主动模式的时候,laravel默认就可以上传文件了。

D:\phpStudy\WWW\xxx\config\filesystems.php

'ftp' => [    'driver' => 'ftp',    'host' => '52.xx.xx.239',    'username' => 'xx',    'password' => 'xx',    'root' => '/xx/xx/data',    'passive' => false,    'timeout' => 100,],

上传文件代码:

public function multiUpload($imageArray, $path = '', $prefix = ''){    set_time_limit(800);    if (!$imageArray || count($imageArray) > 50) {        return false;    }    $new_image_array = [];    foreach ($imageArray as $key => $value) {        $mime_type = $value->getClientOriginalExtension();        $save_name = $prefix . str_random(6) . '.' . $mime_type;        // $new_image_array['image'][] = $value->storeAs($path, $save_name, 'ftp');        $new_image_array['image'][] = 'storage/' . $value->storeAs($path . '/image', $save_name, 'public');    }    return $new_image_array;}

或者下面的 形式ftp存文件

//测试ftp上传        Storage::disk('ftp')->put('data/1.txt', "ftp123456222");        $exists = Storage::disk('ftp')->exists('data/12.txt');        var_dump($exists);

 或下面这个 上传也挺好的

if(!empty($request->file())){            //判断是否有文件传入            $file = $request->file($fileName);                //获取到请求文件            if(!empty($file)){            //判断文件是否存在                $fileExt = $file->getClientOriginalExtension();        //获取文件后缀名                $realPath = $file->getRealPath();        //获取文件真实路径                $filename = date('YmdHis') . uniqid() . '.' . $fileExt;        //按照一定格式取名                $filepath = $fileName.'/';        //个人要求的路径                $bool = Storage::disk('ftp')->put('/data/'.$filepath.$filename, file_get_contents($realPath));            //使用Storage传文件至ftp                $fileServer = $server;        //ftp的ip地址                $fileUrl = $fileServer.$filepath.$filename;        //文件的url地址                if($bool){                    return $fileUrl;        //返回文件url,可用于传入数据库                } else{                    return '500';                }            }        }        return null;    }

 

 

转 :  https://blog.csdn.net/zhezhebie/article/details/80679764

Laravel移动本地文件到ftp服务器

 

从本地移动文件到远程服务器: (laravel 5.7 才支持这个功能)

Storage::disk('ftp')  ->writeStream(    'remote-file.zip',    Storage::disk('local')->readStream('local-file.zip')  );

 

To response-streams:

return response()->stream( function() {    fpassthru( Storage::disk('s3')->readStream('file.zip') );  });

 

 

 

转 : https://blog.csdn.net/zhezhebie/article/details/85763217

 

转载于:https://www.cnblogs.com/fps2tao/p/11347356.html

你可能感兴趣的文章
动态执行linq 语句 NLinq
查看>>
BigDecimal四舍五入保留两位小数
查看>>
python类方法、类属性和静态方法
查看>>
[转]MySQL常用Json函数和MySQL常用字符串函数
查看>>
[JSOI2008]最大数maxnumber
查看>>
2012/5/27
查看>>
皇冠书籍,小雷推荐
查看>>
个人官网第6次升级,艰难地完成了,有史以来最难的一次
查看>>
Java中的浮点数-科学计数法-加减乘除
查看>>
asp.net mvc 如何接收支付宝支付接口 异步通知 notify
查看>>
python-九九乘法表
查看>>
Java第二周实验总结《Java的基本语法与类库》
查看>>
WindowsSever2008 R2 Standard 共享打印机手顺
查看>>
2015 9月22日 工作计划与执行
查看>>
C#实现视频监控客户端onvif协议一
查看>>
BERT中文 添加 early_stop
查看>>
spring MVC 使用 hibernate validator验证框架,国际化配置
查看>>
GS1已分配给国家(地区)编码组织的前缀码
查看>>
字符串知识清单
查看>>
sql优化之not in
查看>>