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. CentOS7.x安装Java

    1.在甲骨文注册帐号下载需要版本的java的源码包 https://www.oracle.com/java/technologies/jdk12-downloads.html 2.把下载好的jdk的源 ...

  2. [nginx][tls] nginx配置https与ssl/tls的sni的方法

    一 https的sni配置方法 http {       }       server {               listen 443 ssl;               server_nam ...

  3. 【HICP Gauss】数据库 升级迁移维护-2

    DM-Data Manager 集群管理web工具 数据库升级 1.检查版本 依次升级.升级前全备数据 2.磁盘空间不小于表预留空间 3. 确保数据库对包有一定权限 4.升级后正常启停 python ...

  4. 调试freeradius 3.0 与microsoft AD通过LDAP认证的笔记

    首先来参考文章: a.https://blog.51cto.com/liqingbiao/2146832?utm_source=oschina-app 这个主要参考了基本安装.配置.测试 b.http ...

  5. springboot项目搭建及常用技术整合

    一.在你建立的工程下创建 Module 选择Spring initializr创建. 二.在Type处选择: Maven Project(项目的构建工具) 三.创建依赖时勾上web,mybatis,m ...

  6. C++(四十)— C++中一个class类对象占用多少内字节

    一个空的class在内存中多少字节?如果加入一个成员函数后是多大?这个成员函数存储在内存中什么部分? 一个Class对象需要占用多大的内存空间.最权威的结论是: 非静态成员变量总合. 加上编译器为了C ...

  7. 农业银行网上支付平台-商户接口编程-demo调试

    调试的时候会报一个这样的错误. ReturnCode = [1999]ErrorMessage = [系统发生无法预期的错误 - 第1个证书无法读取证书文档] 网上其他资料说是权限问题,有的人可能是权 ...

  8. Beta版本冲刺

    一.团队成员 团队名称 西柚排课王 项目名称 易奇排排课系统 团队成员 秦傲明 201731062308 韩浩 201731062319 黄青松 201731062322 王越豪 2017310623 ...

  9. Oracle的Md5加密

    创建函数 CREATE OR REPLACE FUNCTION MD5( passwd IN VARCHAR2) RETURN VARCHAR2 IS retval ); BEGIN retval : ...

  10. JS+rem,移动端适配

    window.onresize = function () { setHtmlFz(); } setHtmlFz(); function setHtmlFz() { // 基础值 var baseVa ...