Laravel存储门面没有返回好路径

时间:2017-01-14 00:14:25

标签: php laravel laravel-5.3

我正在尝试将一些文件上传到Laravel中的特定“磁盘”,然后从这些文件中检索URL。

这是我的config/filesystem.php文件:

'disks' => [
    ...
    'thumbnails' => [
        'driver' => 'local',
        'root' => storage_path('app/public/pictures/thumbnails'),
        'visibility' => 'public',
    ],
    ...
],

这是我处理上传文件的方式(非常基本,仅用于测试目的):

Route::post('upload', function(Request $request) {
    $file = $request->file('file');
    $path = $file->storeAs('/', 'myFile.'.$file->getClientOriginalExtension(), 'thumbnails');
    return dd($path);
});

创建了文件/storage/app/public/pictures/thumbnails/myFile.jpg,这很好,但$path等于"myFile.jpg"而不是完整路径。第一件奇怪的事。

然后,如果我使用:

$url = Storage::disk('thumbnails')->url('myFile.jpg');

$url等于"/storage/myFile.jpg"而不是"/storage/app/public/pictures/thumbnails/myFile.jpg"

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

默认情况下,磁盘url方法正好在docs中所述的/storage前面。

要自定义网址,请在您的配置中添加url

'thumbnails' => [
    'driver' => 'local',
    'root' => storage_path('app/public/pictures/thumbnails'),
    'visibility' => 'public',
    'url' => 'the url',
],