Laravel不显示上传的图像(共享主机)

问题描述 投票:0回答:3

我有一个共享主机,我只能通过Cpanel访问。

但我有一个小问题,因为上传的图像没有出现。

有谁知道如何解决?

enter image description here

我保存图像的代码

$request->picture->storeAs('public/upload/authors', $filename);

代码看图像

<img src="{{ asset('storage/upload/authors/'.$author->picture.'') }}" width="75" height="75">

有谁知道它能是什么?

php laravel laravel-5 cpanel shared-hosting
3个回答
0
投票

您在尝试提交表单时是否收到错误消息?当您浏览所谓的上传图片时,您是否收到404错误?这听起来像上传文件夹没有足够的权限来存储上传的图片。尝试将上传文件夹的权限设置为775。

有关CHMOD的更多信息:http://www.stadtaus.com/en/tutorials/chmod-ftp-file-permissions.php


0
投票

检查,如果您上传的图片出现在/public/upload/authors directorey下:

<img src="{{ asset('upload/authors/'.$author->picture.'') }}" width="75" height="75">

如果您上传的图片出现在/storage/app/public/upload/authors目录下,请使用:

<img src="{{ Storage::get('public/upload/authors/'.$author->picture.'') }}" width="75" height="75">

附:抱歉,我不记得存储函数存储的确切位置:公共存储或存储:)

注意! asset()函数从app/public文件夹获取文件URL,但Storage :: get()从app/storage/app文件夹获取文件


0
投票

我这样解决了我的问题。在公用文件夹中,我使用以下代码创建了一个名为symlink.php的文件。

<?php

symlink('/home/server_name/project_app_folder/storage/app/public', 
    '/home/server_name/public_html/storage');

我在storage中删除了文件夹public_html,并在.php上传了我的public_html文件。然后我通过访问域example.com/symlink.php的域运行代码。最后,服务器创建一个链接到项目存储文件夹的文件夹。

© www.soinside.com 2019 - 2024. All rights reserved.