Загрузка больших файлов на FTP с помощью PHP

Я пытаюсь загрузить большие файлы с php на ftp-сервер. Я могу загрузить небольшие файлы, но у меня возникли проблемы с загрузкой больших файлов. Я просмотрел его и обнаружил, что мне нужно установить upload_max_filesize и post_max_size, установить ftp в пассивный режим и установить ограничение по времени на никогда. Мне не повезло с установкой ограничения по срокам, и то, что у меня сейчас, не возвращает никаких ошибок, но оно также не загружает файл. Если вы посмотрите на строку if (!$upload) { внизу, она должна что-то повторить, но это не так. Что еще более важно, он просто не работает. Любое понимание того, что происходит не так или что мне нужно сделать, чтобы сделать эту работу? Спасибо!

 ini_set('upload_max_filesize', '50M'); ini_set('post_max_size', '50M'); $conn_id = ftp_connect($ftp_server); // login with username and password $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); // check connection if ((!$conn_id) || (!$login_result)) { echo "FTP connection has failed!"; echo "Attempted to connect to $ftp_server for user $ftp_user_name"; exit; } // turn passive mode on ftp_pasv($conn_id, true); if($_FILES['upload_file']['name']!=''){ $source_file = $_FILES['upload_file']['tmp_name']; $destination_file = $_FILES['upload_file']['name']; // upload the file $upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY); // check upload status if (!$upload) { echo "FTP upload has failed!<br />"; } else { echo "Uploaded $source_file to $ftp_server as $destination_file<br />"; } } 

ОБНОВИТЬ

Я обнаружил, что не могу установить значение upload_max_filesize с php-страницы; Кроме того, я не могу получить .htaccess для работы: если у меня есть файл .htaccess, это приводит к ошибке HTTP 500. Кроме того, у меня нет доступа к php.ini.

Как еще я могу изменить значение upload_max_filesize?

Больше информации

Мой веб-администратор сказал мне, что я нахожусь в системе на основе IIS, поэтому файлы .htaccess не будут работать. Есть ли способ повлиять на размер загрузки файла с помощью web.config?

С этого сайта: http://www.php.net/manual/en/ini.php

'upload_max_filesize' и 'post_max_size'

имеют тип PHP_INI_PERDIR

что означает, что запись может быть установлена ​​в «php.ini, .htaccess или httpd.conf». Поэтому вы не можете установить его в своем скрипте.

— Редактировать —

Аналогичный вопрос: изменение upload_max_filesize на PHP

— Редактировать 2 —

Лично я хотел делать то же самое (загружать большие файлы через ftp) и заканчивать тем, что писал java-приложение. Для обработки больших файлов php не самый лучший способ. Веб-браузеру это не очень нравится. Итак, для обработки больших файлов я бы предложил посмотреть на другую альтернативу: (java, swf, javascript, …)

Что-то, что я хотел бы попробовать, когда у меня есть время http://nodejs.org/

как справедливо указано @AngeDeLaMort, вы не можете использовать сокращенную нотацию для установки значений конфигурации вне PHP.ini.

ссылка: изменение upload_max_filesize на PHP

попробуйте сделать это таким образом.

создайте файл .htaccess в корневом каталоге и добавьте следующее.

 php_value upload_max_filesize 50M php_value post_max_size 50M php_value max_execution_time 200 php_value max_input_time 200