Я настроил простую систему загрузки файлов, используя laravel.Чтобы сохранить изображение, я настроил свой контроллер как
public function store(Request $request)
{
$menu = new Menu;
$menu->title = $request->get('menuTitle');
$menu->user_id = Auth::id();
if($request->hasFile('menuImage')){
$filenameWithExt = $request->file('menuImage')->getClientOriginalName();
$fileName = pathinfo($filenameWithExt,PATHINFO_FILENAME);
$ext = $request->file('menuImage')->getClientOriginalExtension();
$fileNameToStore = $fileName.'_'.time().'.'.$ext;
$path = $request->file('menuImage')->storeAs('public/menu',$fileNameToStore);
}
else{
$fileNameToStore = 'blank.jpg';
}
$menu->image_name = $fileNameToStore;
$menu->save();
return redirect(route('menu.create'))->with('success',$menu->title." Added successfully");
}
В представлении я установил его как
<a href="#">
<img class="img-fluid rounded mb-3 mb-md-0" src={{asset("/storage/menu/".$menu->image_name)}} alt="">
</a>
В браузере ссылка
<img class="img-fluid rounded mb-3 mb-md-0" src="http://127.0.0.1:8000/storage/menu/Screenshot_20190517_023111_1558916284.png" alt="">
Во время разработки я работал над Ubuntu, и все работает отлично.Тем не менее, я перенес свои файлы на свой Mac и, используя xampp, смог заставить все работать.Однако изображения больше не загружаются.Я получаю ошибку 404 при проверке консоли.Тем не менее, изображения могут загружать в нужную папку.