Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/420.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel不提供来自公共目录的文件_Php_Html_Css_Laravel - Fatal编程技术网

Php Laravel不提供来自公共目录的文件

Php Laravel不提供来自公共目录的文件,php,html,css,laravel,Php,Html,Css,Laravel,我正在使用最新的laravel 7.x 问题是:正如标题所说,Laravel somewhy不从public dir提供服务。 我在storage/app/public/img/Logo_original.png中有一张图片,在storage/app/public/css/style.css中有一张css 当我试图获取css或img时,服务器返回404错误 app.blade.php中存在以下代码: css: 如果我使用inspect元素并检查源代码,则有一个css dir,位于style.cs

我正在使用最新的laravel 7.x

问题是:正如标题所说,Laravel somewhy不从public dir提供服务。 我在storage/app/public/img/Logo_original.png中有一张图片,在storage/app/public/css/style.css中有一张css

当我试图获取css或img时,服务器返回404错误

app.blade.php中存在以下代码: css:

如果我使用inspect元素并检查源代码,则有一个css dir,位于style.css文件中,但它是空的

img:我试过很多方法,但最后一种是:

@php
  $url = asset('img/Logo_original.png');
  print('<img src='.$url.'>');
@endphp
@php
$url=asset('img/Logo_original.png');
打印(“”);
@endphp
我看过stackoverflow的4个教程和3种方法,但不幸的是,它们都没有帮助我解决这个问题


请帮我解开这个谜团。

如官方文件中所述,您需要:

  • 使用
    php artisan storage:link
  • 使用echo资产('storage/img/Logo_original.png')创建指向资产的URL在其路径中包括
    存储
    。因为asset helper函数将创建公用文件夹的URL。img不在那里,但是在上面的步骤1中,您已经在
    public
    文件夹中创建了一个名为
    storage
    的符号链接。所以正确的url应该是
    http://localhost:8080/storage/img/Logo_original.png
    可以使用上述方法创建
  • echo资产('storage/img/Logo_original.png');
    
    您是否创建了符号链接
    php artisan storage:link
    ?要获得正确的公共存储url,请使用
    存储::磁盘('public')->url('img/Logo_original.png)
    资产用于提供来自
    /public
    的文件,您是否尝试添加
    存储
    类似的内容:
    资产('storage/img/Logo_original.png')?非常感谢!我将存储/添加到链接中,它成功了!