laravel文件上传(本人使用的ftp驱动配置,本地测试总结)
1.电脑端在:控制面板->程序和功能->打开和关闭Window功能,安装:Internet信息服务的(Ftp服务器,web管理工具的IIS管理服务,万网服务的常见http功能)
2.在电脑左下角搜索IIS服务,自行网上搜索ftp站点本地配置方法和Hosts文件中配置本地临时域名
效果绑定之后如下:(绑定之后:测试一下:ftp://IP地址 看是否可以正常访问你所绑定的文件夹目录。 laraveltest.com:801/绑定目录下文件名。看是否能正常打开你的文件夹下的目录)
3.在框架config->filesystems.php中配置ftp站点:新增ftp驱动配置就可以了
'disks'=>[
'ftp' => [
'driver' => 'ftp',
'host' => '192.168.16.105', //本地电脑绑定的IP地址:
'username' => 'miniapp',//ftp账号:
'password' => '123456'//ftp密码:
],
]
4.把在ftp站定绑定的本地设置的域名放到config中的app.php配置文件中,方便调用,也方便以后统一修改。
'imgurl'=>url('/').':801/'
5.上传文件:
路由:
Route::any('demos',['uses'=>'StudentController@demos']);
控制器:
public function demos(Request $request) { if (Request::isMethod("post")) { //Storage::disk('ftp')->put('file.txt','Content'); $file = Request::file('uploads'); //dd($file); //文件是否上传成功: //扩展名: $ext = $file->getClientOriginalExtension(); //临时绝对路径: $realPath = $file->getRealPath(); $filename = date('YmdHis') . uniqid() . '.' . $ext; $bool = Storage::disk('ftp')->put($filename, file_get_contents($realPath)); $img="<img src='".config('app.imgurl').$filename."'/>"; return $img; } else { return view('demos'); } }
上传成功之后,就会显示上传的图片了。本人本地wampser安装到d盘,ftp站点目录设置到e盘了。
有问题可留言,谢谢