如何在Laravel中创建从子域文件夹到根文件夹的各种大小的缩略图?

时间:2020-06-26 11:15:24

标签: laravel

我正在从public_html目录中的子域文件夹(abc.xyz.com)上传图像。

我正在使用Image Intervention创建3个缩略图大小(100x100、200x200、300x300),并尝试将其保存在主域中(即public_html中)。

我的文件夹结构:

demoproject->这在 public_html 外部,包含没有公共文件夹的laravel项目。

public_html->这是我已移动整个公用文件夹的根文件夹。

public_html-> abc.xyz.com(这是我上传图像的子域文件夹。)

问题是“ 实际图像保存得很好,但是仅保存了1张缩略图图像以及以下错误

Intervention\Image\Exception\NotReadableException
Image source not readable

我已将父磁盘设置在子域中:

'parent_disk' => [
        'driver' => 'local',

        // This should be a correct absolute path, so change it with yours
        'root'   => '/home/your_username/public_html/storage/app/public',
        'visibility' => 'public',
    ],

我的图片上传代码是:

if ($request->hasFile('frontimage')) {
            $file_frontimage=$request->file('frontimage');
            $actual_filename_frontimage=$file_frontimage->getClientOriginalName();
            $filename_frontimage= time() . '_' .$actual_filename_frontimage;
            //$file_frontimage->storeAs('images', $filename_frontimage, 'public');
            $file_frontimage->storeAs('images', $filename_frontimage, 'parent_disk');

            $file_frontimage->storeAs('thumbnailimages', '525x350'.$filename_frontimage, 'parent_disk');
            $thumbnailpath_525x350= public_path('storage/thumbnailimages/'.'525x350'.$filename_frontimage);
            $img_525x350= Image::make($thumbnailpath_525x350)->resize(525,350);
            $img_525x350->save($thumbnailpath_525x350);

            $file_frontimage->storeAs('thumbnailimages', '527x350'.$filename_frontimage, 'parent_disk');
            $thumbnailpath_527x350= public_path('storage/thumbnailimages/'.'527x350'.$filename_frontimage);
            $img_527x350= Image::make($thumbnailpath_527x350)->resize(527,350);
            $img_527x350->save($thumbnailpath_527x350);
            }

0 个答案:

没有答案