2017-07-17 139 views
0

這是我的路線:Laravel鏈式存儲文件夾不能assessd

Route::post('/articles/image/upload','[email protected]'); 

這是我的控制器:

public function imageUpload(Request $request){ 

     $path=$request->file('wangEditorH5File')->store('/'); 

     return asset('storage/'.$path); 

     } 

我使用的富文本編輯器,允許用戶上傳他們的圖片所以我必須返回一個URL到文本編輯器。

我做了使用符號鏈接:創建從public/storagestorage/app/public一個符號

php artisan storage:link 

我也改變了文件系統的默認驅動器從地方到之前鏈接

公共
return [ 


'default' => env('FILESYSTEM_DRIVER', 'public'), 



'cloud' => env('FILESYSTEM_CLOUD', 's3'), 

'disks' => [ 

    'local' => [ 
     'driver' => 'local', 
     'root' => storage_path('app'), 
    ], 

    'public' => [ 
     'driver' => 'local', 
     'root' => storage_path('app/public'), 
     'url' => env('APP_URL').'/storage', 
     'visibility' => 'public', 
    ], 

    's3' => [ 
     'driver' => 's3', 
     'key' => env('AWS_KEY'), 
     'secret' => env('AWS_SECRET'), 
     'region' => env('AWS_REGION'), 
     'bucket' => env('AWS_BUCKET'), 
    ], 

], 

]。

畢竟設置完畢後,文本編輯器會返回一條錯誤消息,告訴我我無法獲取圖像的URL。

這意味着我無法訪問public下的storage文件夾。

我試圖把圖像中的css文件夾並更改asset()功能

public function imageUpload(Request $request){ 

    $path=$request->file('wangEditorH5File')->store('/'); 

    return asset('css/111.jpg'); 

} 

它適用於CSS和圖像顯示出來。

+0

確保您爲'存儲/程序/ public'目錄正確的權限在機器上。 – AlexM

+0

可以給我進一步的信息?像文檔或如何。謝謝 –

+0

[這裏](https://www.google.ru/#q=laravel+storage+directory+permissions)。別客氣。 – AlexM

回答

1

問題已解決。

如果您在Windows下創建符號鏈接,這裏是解決方案

php artisan storage:link不宅基地工作。相反 刪除該文件夾,手動重新創建它們使用 homestead sshln -s ~/projects/my-website/storage/app/public/ ~/projects/my-website/public/storage.

From other question ->Laravel storage can't be accessed

+0

然後將您的答案標記爲可接受的解決方案。 –

相關問題