提问者:小点点

Laravel 5.4显示找不到404(公共存储)


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

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

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

  • 我已经运行php工匠存储:链接
  • 图像存在于公共存储文件夹

映像存在于公用存储文件夹中

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

$filename =  $request->file->getClientOriginalName();
$request->file->storeAs('storage',$filename); 

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

@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

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

404找不到

但是当我使用localhost:8000/storage/1时。jpg文件正在显示。当url没有公共链接时显示图像

谢谢


共3个答案

匿名用户

我必须从vagrant框中运行php artisan storage:link,才能使符号链接真正生效。

匿名用户

如果您使用Vagant,php artisan存储:链接应该在Vagant下运行。否则,文件夹映射将是错误的,这就是为什么你得到404的原因之一。所以,首先运行流浪者ssh,然后找到你的项目文件夹并运行php artisan存储:link

匿名用户

而不是资产,你应该使用:

{{ Storage::url($pr->$get_data_slider->file) }}

有关更多信息,请访问文件系统laravel