在我的Laravel项目中,我尝试用blade加载一个图像到我的视图中,但是它显示为一个断开的链接。我用firebug检查它,src指向图像,但是没有显示任何东西。
我的图像位于我的项目的公共/images/users/3/profilePictures/
下面是我在view.blade.php中的<img>
<img class="com-profile-picture" src="images/users/{{ $follower->id }}/profilePictures/50thumb-{{ $follower->profilePicture->url }}" alt="{{ $follower->first_name }} {{ $follower->last_name }} Profile" width="50" height="50">
然而,当我加载页面时,我得到这个:
当我用firebug检查图像时,我看到了这个:
这是正确的源代码,并且映像确实存在于我的public/images/users/3/profilePictures/目录中
有人知道为什么会这样吗?
6条答案
按热度按时间6ioyuze21#
这可能是因为您所在的路由不代表基本URL。您应该生成相对于
public/
文件夹的资产URL。请使用URL::asset('path/to/asset')
生成URL。或者正如@lukasgeiter提到的,您可以简单地使用
asset('path/to/asset')
助手。vhmi4jdf2#
你可以试试
否则你可以用这个
.env
文件中问题(链接损坏错误)的简单修复将替换为
那么这个问题就解决了。
kq0g1dla3#
删除已经生成的符号链接,然后运行以下命令
9rnv2umw4#
如果您使用是laravel,请考虑从laravel控制的文件夹中排除公用文件夹或以.htacccess存储公用文件的任何文件夹。
在.htaccess中这样做
# Exclude directory from rewriting RewriteRule ^(public/) - [L]
qzwqbdag5#
之前的储存位置(不工作):
工作储存位置:
否则请尝试:
1.正在删除公用文件夹中创建的所有链接/快捷方式文件夹
1.然后通过运行以下命令重新创建链接:
php工匠存储:链接
rta7y2nd6#
Goto public Folder
删除存储快捷方式然后为storage文件夹Create ShortcutStorage Folder创建另一个快捷方式然后运行php artisan storage:link