【问题标题】:How to fix GET http://localhost/storage/users/default.jpg 404 (Not Found) in laravel如何在 laravel 中修复 GET http://localhost/storage/users/default.jpg 404(未找到)
【发布时间】:2019-04-24 11:06:39
【问题描述】:

我遇到了一个问题,返回给我 :
GET http://localhost/storage/users/default.jpg 404 (Not Found)

我创建了存储链接(快捷方式)并在其中创建了 users/default.jpg 文件。
我在刀片中这样称呼它:
{{Storage::disk('public')->url('users/'. Auth::user()->image)}}

但它不起作用。任何人都可以帮助我吗?我该如何解决这个问题。我找不到问题。

我的代码:

<div class="user-pic">
   <img src="{{Storage::disk('public')->url('users/'. Auth::user()->image)}}" alt="users" class="rounded-circle" width="50" />
</div>

【问题讨论】:

  • url('users/'.Auth::user()- >image)}}" alt="users" class="rounded-circle" width="50" />

标签: php laravel laravel-5 laravel-5.8


【解决方案1】:

存储文件夹不能公开调用,您应该使用创建符号链接

php artisan storage:link

然后你就可以使用了

$path = asset('storage/' . $filepath/$fileName);

检索文件,

参考docs

【讨论】:

  • 我使用 php artisan storage:link 命令创建了符号链接,但它不起作用
  • @ShahadatHossain 你能在公用文件夹中看到你的存储文件夹吗?
  • 是的,我在公共文件夹中有一个快捷方式文件夹。当我点击这个 php artisan storage:link 命令时,它就被创建了。
  • @ShahadatHossain 你能告诉我你的文件的公共文件夹路径吗?
  • 我的项目文件名是redline。在这个文件夹里面 app、config、database 和 public 等等。
【解决方案2】:

您可以通过编写此&lt;img src="{{ asset('imgs/logo/global.png') }}"/&gt; 直接访问您的公用文件夹,它将采用本地路径,如/public/imgs/logo/global.png

【讨论】:

    【解决方案3】:

    运行命令php artisan storage:link 后,您最终将使用以下语法访问存储目录中的资产文件:asset('storage/file.txt');

    如果您希望在刀片模板中访问它,您将编写如下内容:

    <img src= "{{ asset('storage/users/' . Auth::user()->image) }}">
    

    【讨论】:

    • 如果您想要这样做,请接受答案。
    猜你喜欢
    • 2021-03-11
    • 1970-01-01
    • 2021-09-14
    • 2022-09-28
    • 2018-08-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-27
    相关资源
    最近更新 更多