I'm using storage_path
to save my images and I symbolic my storage folder to public_html
php artisan storage:link
在本地,一切正常,当我上传一张图片时,它会上传到存储文件夹中,链接会出现在public
文件夹中,但由于我移动到live host和生产模式,我的图片会上传到存储文件夹中,但在我的public_html/storage
中没有,我无法在前端获取它们.
Codes
/config/filesystems.php
'public' => [
'driver' => 'local',
'root' => storage_path('app/public/'),
'url' => env('APP_URL').'/storage',
'visibility' => 'public',
],
.env
FILESYSTEM_DRIVER=public
controller sample
if ($request->hasFile('image')) {
$image = $request->file('image');
$filename = 'page' . '-' . time() . '.' . $image->getClientOriginalExtension();
$location = storage_path('app/public/images/' . $filename);
Image::make($image)->resize(1200, 600)->save($location);
if(!empty($page->image)){
Storage::delete('images/' . $page->image);
}
$page->image = $filename;
}
有什么 idea 吗?