2016-09-22 2 views
4

Я переношу данные с одного сервера на другой, и я использую curl для этого, до сих пор я был успешным, но есть некоторые крупные объекты, которые не переносятся! Я пробовал сериализовать, но даже это не работает, не появляется страница с ошибкой! PHP имеет все параметры, настроенные на максимум,Как отправить большие данные по cURL?

$ch = curl_init(); 
    curl_setopt ($ch, CURLOPT_URL, $url); 
    curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
    curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); 
    curl_setopt ($ch, CURLOPT_TIMEOUT, 60); 
    curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 0); 
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt ($ch, CURLOPT_REFERER, $url); 
    curl_setopt ($ch, CURLOPT_POSTFIELDS, $postdata); 
    curl_setopt ($ch, CURLOPT_POST, 1); 
    curl_setopt($ch, CURLOPT_ENCODING, 'gzip,deflate'); 
    $result = curl_exec ($ch); 
    echo $result; 
    curl_close($ch); 

Я использовал это с обоими:

$stringPost = serialize($postDataFinalArray); 
    $postdata = 'string='.$stringPost;` 

и

$postdata = http_build_query($postDataFinalArray); 

, пожалуйста, помогите!

Размер массива 400540, COUNT_RECURSIVE.

+0

Что ваш post_max_size установлен в? –

+0

Его набор: max_input_vars = 1000000 post_max_size = 8M – sphinx

ответ

2

Размер вашего сообщения превышает ваш набор post_max_size из 8MB. Попробуйте увеличить это что-то вроде 64 МБ (или выше, в зависимости от размера посланных данных) с использованием в php.ini:

post_max_size=64M 

или в скрипте:

ini_set('post_max_size', '64M'); 
+0

Хорошо, я сделал это (и это сработало)! Что еще я могу сделать, чтобы оно продолжалось без ошибок! – sphinx

+0

«... продолжается без ошибок». Подождите, есть другие ошибки? Если это сработало, другое, что вы можете сделать, это ответить на предоставленный мной ответ :) –

Смежные вопросы