我有一个共享主机,我只能通过Cpanel访问。
但我有一个小问题,因为上传的图像没有出现。
有谁知道如何解决?
我保存图像的代码
$request->picture->storeAs('public/upload/authors', $filename);
代码看图像
<img src="{{ asset('storage/upload/authors/'.$author->picture.'') }}" width="75" height="75">
有谁知道它能是什么?
您在尝试提交表单时是否收到错误消息?当您浏览所谓的上传图片时,您是否收到404错误?这听起来像上传文件夹没有足够的权限来存储上传的图片。尝试将上传文件夹的权限设置为775。
有关CHMOD的更多信息:http://www.stadtaus.com/en/tutorials/chmod-ftp-file-permissions.php
检查,如果您上传的图片出现在/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
文件夹获取文件
我这样解决了我的问题。在公用文件夹中,我使用以下代码创建了一个名为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
的域运行代码。最后,服务器创建一个链接到项目存储文件夹的文件夹。