Codeigniter:MP4视频上传不起作用

时间:2013-11-01 15:01:18

标签: php codeigniter video file-upload upload

我正在研究一个问题很长时间但仍然找不到任何解决方案。

我使用codeigniter上传mp4文件。 在此之前,我在config / mimes.php中为mp4添加了mime类型。 我试过了两个: mp4 => video/mp4 和 的 mp4 => array('video/mp4', 'video/3gpp')

这两种方法在本地服务器上都很完美,但每当我在Live服务器上测试它时,它总是会给出相同的错误消息“你试图上传的文件类型是不允许的。”。

我又尝试了一件事。即 的 $config['allowed_types'] = "*";

它在本地和在线服务器上都很完美。

但我只想要mp4视频类型。

任何人都有解决这个奇怪问题的方法吗?

3 个答案:

答案 0 :(得分:5)

最后,我得到了问题的解决方案,所以我正在写这个答案。

本地和在线服务器中大多数mime类型的检测都不同。

就我而言,本地服务器将file_type变为“video / mp4”。但是在线服务器将mime类型检测为'application / octet-stream'。

所以我在配置文件夹的mime类型列表中添加了数组:

<强> 'mp4' => array('video/mp4', 'application/octet-stream'),

现在它在本地和在线服务器上都能正常运行。

答案 1 :(得分:0)

当我们上传带有扩展名mp4的视频时依赖于视频mime文件类型但是在CodeIgniter上传库中使用php函数 finfo_file 来检测file_type这个函数我们得到其他file_type。防爆。我得到 video / 3gpp

所以我改变了config / mimes.php

<强> 'mp4' => array('video/mp4', 'video/3gpp'),

它为我工作。

由于

答案 2 :(得分:0)

如果一切都不起作用,请重新排列允许的类型顺序,首先放置视频格式:

$config['allowed_types'] = 'mp4|jpg|png|'

它适用于我的情况。