You can not access the storage folder directly like that. It is 1-level above the public path where your index.php file is located.
You should read this doc: https://laravel.com/docs/5.6/filesystem#configuration
Basically you have to create a symbolic link:
php artisan storage:link
Then you access files using the Storage facade:
-
Storage::put('avatars/1', $fileContents); -
$contents = Storage::get('file.jpg'); -
$url = Storage::url('file.jpg');