You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular+Codeigniter3项目OGG文件本地可上传生产环境报错如何解决

CodeIgniter 3 生产环境OGG文件上传失败排查方案
  • 检查生产环境PHP上传限制配置
    确认php.ini中的upload_max_filesize、post_max_size参数值是否大于你上传的OGG文件体积,本地和生产环境的PHP配置通常存在差异,很多生产环境默认的上传上限设置较小。你可以在生产环境临时输出phpinfo()查看生效配置,修改后需重启PHP-FPM或Web服务器(Apache/Nginx)才会生效。
  • 检查Web服务器的上传限制规则
    若使用Nginx,需确认配置中的client_max_body_size参数,默认值为1M,超出该值的请求会直接返回413错误,不会进入CodeIgniter的上传逻辑;若使用Apache,检查LimitRequestBody配置是否限制了上传大小。
  • 排查生产环境OGG文件的MIME识别偏差
    不同服务器的finfo扩展对OGG格式的识别结果可能存在差异,部分服务器会将OGG识别为audio/ogg、video/ogg甚至application/ogg。你可以在CI的上传逻辑中临时添加调试代码输出实际拿到的MIME值:var_dump($this->upload->data('file_type'));exit;,将拿到的MIME值补充到application/config/mimes.php的ogg配置数组中即可,示例配置如下:
    'ogg' => array('audio/ogg', 'video/ogg', 'application/ogg', 'audio/x-ogg', 'video/x-ogg')
    
  • 检查生产环境上传目录权限
    确认CI配置的上传目录在生产环境的权限为755(优先)或777,且目录所属用户与Web运行用户(常见为www)一致,权限不足会直接触发上传失败。你可以先尝试上传其他小体积的允许类型文件(如jpg)验证是否为目录权限问题。
  • 排查安全规则拦截情况
    部分生产环境会部署WAF或安全防护软件,可能会误拦截OGG格式的文件上传请求。你可以查看Web服务器的访问日志、错误日志,以及CI的运行日志(默认存放在application/logs目录下),确认是否存在拦截记录或对应的上传错误码,进一步定位问题。

内容的提问来源于stack exchange,提问作者Bilal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 19:24:04