The file failed to upload.

    public function upload(Request $request, Service $service)
    {
        $data = $request->all();
        $rule = [
            'file' => 'required',
        ];
        $message = [
            'required' => '文件不存在,请重新上传',
        ];
        $validator = Validator::make($data, $rule, $message);
        if ($validator->fails()) {
            //现在代码一直往这里面跑,不知道啥情况
            $msg = $validator->errors()->first();
            return $this->errorResponse(300,$msg);
        }
        $result = $service->upload($request->file('file'));
        return $this->reponse($request, $result);
    }

php 配置

file_uploads = On
upload_max_filesize = 50M
post_max_size = 50M

看了别的帖子有说是权限问题,我也没存本地,所以具体是哪个文件夹的权限。storage 的文件夹我也赋 777 的权限了,也没用
PHP 版本:8.2.20
开发环境:Linux opensuse
项目文件主目录:/home/xm
php-fpm 的运行用户:xm

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
最佳答案

破案了 调用 file 方法调试

$file->getErrorMessage();

输出以下信息

"The file "日志.zip" exceeds your upload_max_filesize ini directive (limit is 2048 KiB)."

但是我明明改了 /etc/php8/cli/php.ini 的配置信息了,并且也重启了;
后面发现 php-fpm 读取的是 /etc/php8/fpm/php.ini 的配置文件,改了之后重启就可以了

9个月前 评论
讨论数量: 2

调试一下就好啦,把校验规则换一个试试,参考文档:请求《Laravel 10 中文文档》

9个月前 评论

破案了 调用 file 方法调试

$file->getErrorMessage();

输出以下信息

"The file "日志.zip" exceeds your upload_max_filesize ini directive (limit is 2048 KiB)."

但是我明明改了 /etc/php8/cli/php.ini 的配置信息了,并且也重启了;
后面发现 php-fpm 读取的是 /etc/php8/fpm/php.ini 的配置文件,改了之后重启就可以了

9个月前 评论