Laravel 5.4 显示 404 Not Found(公共存储)

Dev*_*vGe 1 php laravel

我有一个关于公共存储和存储本身的问题

在我完成将文件插入存储后。然后在视图页面中,我想显示我存储到存储中的文件。但我有问题我有错误。

加载资源失败:服务器响应状态为 404(未找到)

  • 我已经运行了 php artisan storage:link
  • 图像存在于公共存储文件夹中

图像存在于公共存储文件夹中,我运行了 php artisan 存储链接

这是我的代码,如何将文件插入到存储中。

$filename =  $request->file->getClientOriginalName();
$request->file->storeAs('storage',$filename); 
Run Code Online (Sandbox Code Playgroud)

这是我的代码,如何将图像显示到视图页面

@foreach($home_slider as $get_data_slider)
   @if($get_data_slider->slider_sorting == '1')
                
      <a href="{{$get_data_slider->link}}" target="_blank"><img src="{{ asset('/public/storage/'.$get_data_slider->file.'') }}" class="d-block w-100"></a>
                
    @endif
@endforeach
Run Code Online (Sandbox Code Playgroud)

我发现我无法访问 localhost:8000/public/storage/1.jpg

404 未找到

但是当我使用 localhost:8000/storage/1.jpg 文件显示。 当 url 没有公开时显示图像

谢谢..

小智 6

我必须php artisan storage:link从 vagrant box运行才能让符号链接真正生效。


小智 5

如果你使用 Vagrant,php artisan storage:link应该在 Vagrant 下运行。否则,文件夹映射将是错误的,这就是您得到 404 的原因之一。因此,首先运行vagrant ssh,然后找到您的项目文件夹并运行php artisan storage:link