Скорее всего, вы работаете против часов или у вас конфликтующие настройки, но трудно определить количество предоставленной вами информации.
Даже если вы настроили свой экземпляр PHP на прием до 1024M (кстати, вы уверены, что вам это нужно?), Вам нужно учесть намного больше:
php max_execution_time 120
php max_input_time 120
Вышеуказанное означает, что что бы ни случилось, ваши экземпляры PHP будут остановлены через 120 секунд. Может случиться так, что вы сможете загрузить почти 40M менее чем за 120 секунд.
Теперь, даже если у вас была скорость соединения, позволяющая загружать более 40 МБ менее чем за 120 секунд, есть и другие параметры, которые могут быть противоречивыми, поскольку приведенные выше применимы только к процессу PHP.
Проверьте настройки Apache (я полагаю, что вы используете Apache, учитывая тег вашего вопроса) и посмотрите директивы Apache относительно времени выполнения и лимитов загрузки. Даже если PHP был настроен на разрешение 1 терабайта на файл и 24 часа на процесс, если Apache имеет более строгие ограничения, Apache будет ограничивать ваши размеры загрузки и время выполнения.