【发布时间】:2019-02-17 17:27:07
【问题描述】:
Laravel 文件上传在尝试上传图片时提示用户错误
Get error: local.ERROR: Driver [] is not supported.
如何解决它的问题?
public function channelAvatar(Request $request, Channel $channel)
{
// validate
$this->validate($request, [
'photo' => ['required', 'image', Rule::dimensions()->minWidth(250)->minHeight(250)->ratio(1 / 1)],
]);
// fill variables
$filename = time() . str_random(16) . '.png';
$image = Image::make($request->file('photo')->getRealPath());
$folder = 'channels/avatars';
// crop it
$image = $image->resize(250, 250);
// optimize it
$image->encode('png', 60);
// upload it
Storage::put($folder.'/'.$filename, $image->__toString());
$imageAddress = $this->webAddress() . $folder . '/' . $filename;
// delete the old avatar
Storage::delete('channels/avatars/' . str_after($channel->avatar, 'channels/avatars/'));
// update channel's avatar
$channel->update([
'avatar' => $imageAddress,
]);
$this->putChannelInTheCache($channel);
return $imageAddress;
}
在本地上传或上传到FTP 仍然会出现同样的错误。
【问题讨论】:
-
这段代码中的哪一行会产生这个错误?
-
config/filesystem.php包含什么? -
filesystem.php 'ftp' => [ 'driver' => 'ftp', 'host' => env('FTP_HOST', 'uashared14.twinservers.net '), 'username' => env('FTP_USERNAME', 'aintoday'), 'password' => env('FTP_PASSWORD', '*******'), ],我认为这里有问题:存储: :put($folder.'/'.$filename, $image->__toString()); $imageAddress = $this->webAddress() 。 $文件夹。 '/' 。 $文件名;
-
.env中的FILESYSTEM_DRIVER中有什么内容? -
.env FTP_HOST=uashared14.twinservers.net FTP_PORT=21 FTP_USERNAME=aintoday FTP_PASSWORD=****** FTP_ROOT=/public_ftp
标签: laravel