laravel localhost/public/index.php 不显示背景图片和 svg,但 "php artisan serve" 显示它们

laravel localhost/public/index.php doesn't show background image and svgs, but "php artisan serve" shows them

我的电脑上有一个漂亮的小 laravel 项目。

welcome.blade.php 文件中,它有一个背景图像。图像位于

public/images/

目录。

我用下面的CSS来称呼和代表他们:

html, body {
color: #f4f6f7;
font-family: 'Nunito', sans-serif;
font-weight: 500;
height: 100vh;
margin: 0;

background-image: url('/images/back.png');
-webkit-background-size: cover;
-moz-background-size:cover;
-o-background-size:cover;
background-size: cover;
}

这个项目也包含一个收藏夹图标,它的位置是按照 laravel 设计的。

The problem is:

当我去localhost/got/public/index.php形成我的chrome

它加载了我的项目,但无法显示或加载背景图片或网站图标。

但是当我运行php artisan serve 运行没问题。

我缺少什么东西?

请使用这个:

background-image: url('{{ asset('images/back.png') }}');
-webkit-background-size: cover;
-moz-background-size:cover;
-o-background-size:cover;
background-size: cover;
}

尝试将以下代码添加到您的 webpack.mix.js

.选项({ processCssUrls: false, })

加载头文件时,包括 .css 文件使用 {{ asset("filesurl") }}

当您使用 localhost/got/public/ 时,您的路径不同。尝试为您的项目创建一个虚拟主机。

嗯,这是为什么部分。当您使用 artisan serve 时,图像路径(即 RELATIVE:/images/back.png)指的是 http://localhost:8000/images/back.png。当您使用本地服务器时,图像再次引用 http://localhost/images/back.png 但您的地址是 localhost/got/public/images/back.png.