Codeigniter: mp4 видео не будет загружаться, без ошибок

Я создаю форму для загрузки видеофайла, но у меня странная ошибка.

Моя форма такова:

<div style="color : red;"><?php echo $error;?></div> <?php echo form_open_multipart('data_center/ajout_ressource/formulaire_video'); ?> //various input text fields... <input type="file" name="video"> <input type="submit" value="Ajouter cette ressource" /> </form>± 

Мой метод для загрузки (это внутри того, чтобы проверить, остальная часть формы в порядке):

  $dir = './assets/video/'; $config['upload_path'] = $dir; $config['allowed_types'] = 'avi|flv|wmv|mpeg|mp3|mp4'; $config['max_size'] = '102400'; $this->load->library('upload',$config); if ( ! $this->upload->do_upload('video')){ $error = array('error' => $this->upload->display_errors()); $this->load->view('data_center/ajout_video', $error); } else { redirect('data_center/data_center/','refresh'); } 

Что касается типов mime, я думаю, что все в порядке:

 'mp4' => 'video/mp4', 'wmv' => array('video/wmv', 'video/x-ms-wmv', 'flv-application/octet-stream', 'application/octet-stream'), 'flv' => array('video/flv', 'video/x-flv', 'flv-application/octet-stream', 'application/octet-stream'), 'avi' => 'video/x-msvideo', 

Когда я пытаюсь загрузить файл mp4, он автоматически перенаправляет меня (хотя я не уверен, что это перенаправление) к форме, незаполненной и без сообщения об ошибке, даже если я прокомментирую строки в случае отказа загрузки, чтобы не загружать представление снова или если остальная часть формы некорректна (она не должна пытаться загружать видео и загружать заполненную форму).

Если, например, если я помещаю неправильный тип файла, я могу увидеть сообщение об ошибке (например, «Тип файла, который вы пытаетесь загрузить, не разрешен»), или если форма неверна, я вижу ошибку формы ,

Наконец, я должен добавить, что я модифицировал php.ini, чтобы разрешить такие большие файлы, и что я сделал почти то же самое с формой для изображений (jpg, jpeg, png …), которая отлично работает, но также перенаправляет меня на если я пытаюсь загрузить файл .mp4.

Редактирование: я просто загрузил FLV-видео, чтобы попробовать, и он загрузился отлично, но его размер был меньше 8mb (по умолчанию config), а файл 40 Mb FLV имел ту же проблему, что и файл mp4, хотя я изменил свой конфиг в php .ini для 100mb

Эффективно вам нужно изменить два параметра в файле PHP ini

 post_max_size = 100M upload_max_filesize = 100M 

Но вы также можете изменить параметр защиты от апачей (100M)

 LimitRequestBody 1073741824 

И с другой стороны, у PHP есть ограничение по времени на 30 секунд для каждого скрипта, поэтому ваш скрипт умрет на 30 секунд.

Вы также можете увеличить время, чтобы убедиться, что ваш скрипт не умирает, пока вы загружаете, копируете и т. Д.

 set_time_limit(600); // 10 minutos execution