listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=
dirmessage_enable=YES
use_localtime=YES
xferlog_file=/var/log/vsftpd.log
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=ftp
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
utf8_filesystem=YES use_localtime=YES
connect_timeout=
accept_timeout=
max_clients=
max_per_ip= #主动模式
port_enable=YES
connect_from_port_20=NO
ftp_data_port=
pasv_promiscuous=YES
#被动模式
#pasv_enable=YES
#pasv_min_port=
#pasv_max_port=

用主动模式的时候,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

ftp配置 Laravel上传文件到ftp服务器的更多相关文章

  1. asp.net 服务器 上传文件到 FTP服务器

    private string ftpServerIP = "服务器ip";//服务器ip private string ftpUserID = "ftp的用户名" ...

  2. .Net 上传文件到ftp服务器和下载文件

    突然发现又很久没有写博客了,想起哎呦,还是写一篇博客记录一下吧,虽然自己还是那个渣渣猿. 最近在做上传文件的功能,上传到ftp文件服务器有利于管理上传文件. 前面的博客有写到layui如何上传文件,然 ...

  3. java 上传文件到 ftp 服务器

    1.  java 上传文件到 ftp 服务器 package com.taotao.common.utils; import java.io.File; import java.io.FileInpu ...

  4. java 上传文件到FTP(centos中的ftp服务)

    ftp服务器系统:centos7 提供ftp的服务:vsftpd pom.xml 依赖 <dependency> <groupId>commons-net</groupI ...

  5. JAVA上传文件到FTP上

    添加maven <!-- https://mvnrepository.com/artifact/commons-net/commons-net --> <dependency> ...

  6. FTP主动模式上传文件时返回"ftp: accept: Resource temporarily unavailable"

    FTP主动模式上传文件时返回 Passive mode off ftp: accept: Resource temporarily unavailable 这个问题要从ftp的2种模式说起 PORT ...

  7. Laravel 上传文件处理

    文件上传 获取上传的文件 可以使用 Illuminate\Http\Request 实例提供的 file 方法或者动态属性来访问上传文件, file 方法返回 Illuminate\Http\Uplo ...

  8. springMVC:为MultipartFilte配置了上传文件解析器,报错或不能使用

    一.问题描述为支持restful风格请求,并且应对可能上传文件的情况,需要在配置hiddenHttpMethodFilter过滤器之前配置MultipartFilter.目的是让MultipartFi ...

  9. C# 上传文件至远程服务器

    C# 上传文件至远程服务器(适用于桌面程序及web程序) 2009-12-30 19:21:28|  分类: C#|举报|字号 订阅     最近几天在玩桌面程序,在这里跟大家共享下如何将本地文件上传 ...

随机推荐

  1. MySQL Replication--双主结构优缺点

    双主架构图 双主架构实现原理当从库IO线程接受到主库传递来的二进制日志(Binlog)并将之保存为从库的中继日志(relay log),然后从库SQL线程将中继日志(relay log)的事件重做到从 ...

  2. SQL SERVER-修改TempDB路径

    --查看tempdb文件信息 use tempdb go sp_helpfile go --修改路径 use master go Alter database tempdb modify file ( ...

  3. 转载-企业环境下MySQL5.5调优

    转载-企业环境下MySQL5.5调优 参照 腾讯云 和ucloud my.cnf 以及网上找的资料 整理出来的 my.cnf , 以后修改任何参数都会继续更新,目前是在测试阶段; 物理机 : ubun ...

  4. ISCC之web2

    Php代码审计 PHP代码 <?php error_reporting(0); require 'flag.php'; $value = $_GET['value']; $password = ...

  5. Linux系统下文件压缩与打包命令

    Linux系统下文件压缩与打包命令 常用的压缩文件拓展名 * .Z * .zip * .gz * .bz2 * .xz * .tar * .tar.gz * .tar.bz2 * .tar.xz 压缩 ...

  6. UVA1194 Machine Schedule[二分图最小点覆盖]

    题意翻译 有两台机器 A,B 分别有 n,m 种模式. 现在有 k 个任务.对于每个任务 i ,给定两个整数$ a_i\(和\) b_i$,表示如果该任务在 A上执行,需要设置模式为 \(a_i\): ...

  7. spring DefaultListableBeanFactory 概述

                 有人说,DefaultListableBeanFactory是spring的发动机,其实重要性不为过.TA的整体类图如下:     这里先概述接口部分:   BeanFact ...

  8. keras模块之-优化器(optimizers)--笔记

    本笔记由博客园-圆柱模板 博主整理笔记发布,转载需注明,谢谢合作! 优化器是调整每个节点权重的方法,如: model = Sequential() model.add(Dense(64, init=' ...

  9. HTML锚点控制,跳转页面后定位到相应位置

    想在点击更多的页面 跳转后  用户能看到的是新闻  不用再用scollbar拖下来到新闻页面  这时候就需要在链接上 做下处理 <a href="/article/list/page/ ...

  10. 多线程编程threading

    操作系统能够调度和切换的最小单元实际上是线程.对于IO操作来说,多线程和多进程性能差别不大.有两种方法可以进行多线程编程. 1.使用多线程编程的两种方法 (1)直接实例化一个Thread对象 from ...