Canvas LMS课程内无法上传文件 报错状态码500求助(Ubuntu+Nginx环境)
Canvas LMS 文件上传500错误排查步骤(Ubuntu + Nginx 环境)
- 检查Nginx上传文件大小限制
打开Nginx全局配置文件/etc/nginx/nginx.conf或者对应Canvas站点的配置文件,在http/server块中添加/修改参数:client_max_body_size 2G;(可根据实际上传文件大小调整阈值),修改完成后执行systemctl restart nginx重启服务生效。 - 校验上传目录权限
确认Canvas配置的文件上传存储目录(默认路径通常为/var/canvas/public/uploads)的所属用户、权限与Canvas运行用户一致,可执行以下命令修正:chown -R canvas:canvas /path/to/your/canvas/upload/directory chmod -R 755 /path/to/your/canvas/upload/directory - 查看错误日志定位根因
优先查看Nginx错误日志/var/log/nginx/error.log,以及Canvas生产环境日志/var/canvas/log/production.log,匹配报错时间点的日志内容可直接定位具体错误类型,比如存储满、对象存储连接失败、数据库写入异常等。 - 检查服务器存储资源
执行df -h检查磁盘剩余容量,确认存储上传文件的分区未被占满;执行df -i检查inode是否耗尽,小文件过多导致inode耗尽也会引发写入失败。 - 校验Canvas存储配置
如果你使用第三方对象存储作为上传存储介质,检查访问密钥、地域、桶名等配置是否正确,网络策略是否允许Canvas服务访问对象存储接口。 - 重启Canvas运行服务
若上述配置无异常,可尝试重启Canvas的Rails运行服务,排查是否为服务运行异常导致的临时报错。
内容的提问来源于stack exchange,提问作者Tony nguyen
相关产品推荐
相关产品推荐

