z-song / laravel-admin

Build a full-featured administrative interface in ten minutes
https://laravel-admin.org
MIT License
11.13k stars 2.81k forks source link

上传图片至七牛云失败 #1885

Closed phpLHT closed 6 years ago

phpLHT commented 6 years ago

Description:上传文件至七牛云图片失败,但是线下windows 环境没有问题

![Uploading C)5DMC$BP7C6EQWCSYIM2CC.png…]() ![Uploading K$N%7N26P$FHE23VVY~0)K.png…]() ![Uploading TBXNX@X$L54F`(VLE@I(KX.png…]()

Steps To Reproduce:

$form->image('headimg', '头像'); 使用 $form->saving() 打印不出问题

phpLHT commented 6 years ago

1 2 3 4

z-song commented 6 years ago

看看日志里面有没有什么异常,看下上传本地有没有什么问题

phpLHT commented 6 years ago

改为上传到本地,上传是出现同样的问题; 七牛云上传和本地上传都是出现 :fopen(/www/wwwroot/shop/guessadmin/public): failed to open stream: Is a directory 这个错误,设置的默认问保存在 storage 下不在public 下啊

1

4

@z-song

phpLHT commented 6 years ago

查看的记录文件, 3

z-song commented 6 years ago

你先确认下目录是否存在并且有写入权限

phpLHT commented 6 years ago

/public 和 /storage 目录权限都是设置为了 0777 ,读取文件时没有,才报的错误.在本地临时保存时,是怎么执行的呢??,这个错误应该是这个时候引起的

phpLHT commented 6 years ago

已解决,程序上传所属权限在 www 下,但是文件上传临时保存文件 在/ 下,所以一直错误

leeib commented 6 years ago

@phpLHT 请问这个文件上传临时保存文件权限的问题要怎么设置呢?我也遇到这个问题

$form->file('video', '视频')
            ->removable()
            ->uniqueName()
            ->move(DateDir::videoMonthDayDir())->help('视频目前仅支持mp4格式');
phpLHT commented 6 years ago

你把项目所属的用户和环境所属的用户保持一致,如你的程序代码部署时 www用户,那么你的环境用户 也是www用户就可以了

leeib commented 6 years ago

@phpLHT 我是php限制了文件上传的大小,限制调大后,就不报这个异常了

leeib commented 6 years ago

不过想到要是权限问题,将php上传文件的临时目录设置到项目目录中,应该也可以解决这个问题

loongws commented 5 years ago

@phpLHT 我是php限制了文件上传的大小,限制调大后,就不报这个异常了

我的也是 PHP 限制了文件上传的大小报了这个权限不足的错。。