Laravel版本:7.6,Spatie Medialibrary版本:8.2
我在文件系统中设置了两个磁盘。
'disk1'=>[
'driver'=> 'local',
'root'=> storage_path('app/public'), // /home/mywebsite/source/storage/app/public
'url'=> env('APP_URL').'/storage', // https://mywebsite.com/storage
'visibility'=> 'public
],
'disk2'=>[
'driver'=> 'local',
'root'=>'/home2/storage/mywebsite', // /home/mywebsite/source/storage/app/public
'url'=> env('APP_URL').'/disk2?url=/home2/storage/mywebsite', // https://mywebsite.com/disk2?=url
'visibility'=> 'public
]
当我使用disk1时,它可以按预期工作。 // https://mywebsite.com/storage/1/file1.png
当我使用disk2时,图像按预期保存在正确的位置。 // /home2/storage/mywebsite/1/file1.png
如何调用/ home2磁盘映像?我应该将其链接到公用文件夹中的某个文件夹吗?
我试图解决自己的回调问题。
Route::get('/disk2', 'HomeController@disk2');
public function getImage(Request $request)
{
$headers = array(
'Content-Type: application/image',
);
$file=$request->url;
return response()->file($file, $headers);
}
以上代码完美显示了disk2的映像。
我的回叫与其他文件管理器完美配合。 (laravel-elfidner,unisharp-filemanager ..)
但是网址显示得很急。 // https://mywebsite.com/disk2?url=/home2/storage/mywebsite/1/file1.png
1.Spatie媒体库是否支持这种情况? 2.有更好的解决方案吗?
谢谢