#laravel #laravel-5.2
#laravel #laravel-5
Вопрос:
Я сохранил изображение в хранилище Laravel. Когда я получаю его, он возвращает путь к файлу, но сообщает, что страница не найдена,
Мой код контроллера,
$email = $request['email'];
$first_name = $request['first_name'];
$password = bcrypt($request['password']);
$postdata = $request['user_image'];
$user_name = $request['user_name'];
$myfile = time().str_random();
$image = $request->file('user_image');
$user_image = time() . '.' . $image->getClientOriginalExtension();
Image::make($image)->resize(300, 300)->save( storage_path('/' . $user_image ) );
$user = new User();
$user->email = $email;
$user->first_name = $first_name;
$user->password = $password;
$user->user_image = $user_image;
$user->user_name = $user_name;
$user->save();
Путь к файлу, который я получаю при вызове файла,
http://localhost:8000/storage/1553413340.png
Ответ №1:
По умолчанию общедоступный диск использует локальный драйвер и сохраняет эти файлы в хранилище / app / public. Чтобы сделать их доступными из Интернета, вы должны создать символическую ссылку из public / storage в storage / app / public. Это соглашение сохранит ваши общедоступные файлы в одном каталоге, который можно легко использовать совместно в разных развертываниях при использовании систем развертывания с нулевым временем простоя, таких как Envoyer.
Чтобы создать символическую ссылку, вы можете использовать команду storage:link Artisan:
php artisan storage:link