- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Проблемы при отправки xml пакетов через POST. Если длина пакета <= 1024, то все гуд, если размер больше хотя бы на один, то все получаю ошибку №18 transfer closed with outstanding read data remaining.
Вот функция отправки
function _xmlHttpsReq2($addr, $xml){
echo "\n".$addr;
echo "\n".$xml;
echo "\n".strlen($xml);
//if(strlen($xml)>1000)
//$xml = substr($xml,0,1025);
//$header[] = "Host: mydomain.test";
$header[] = "Content-type: text/xml; charset:utf-8";
$header[] = "Content-length: ".strlen($xml);
$ch = curl_init($addr);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$xml);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header );
$result=curl_exec($ch);
if( curl_errno($ch) != 0 ) {
$info = curl_getinfo($ch);
foreach($info as $name=>$value)
echo "\n".$name.'='.$value;
echo "\nres= ".$result;
echo "\n".'CURL_error: ' . curl_errno($ch) . ', ' . curl_error($ch);
return 'CURL_error: ' . curl_errno($ch) . ', ' . curl_error($ch);
};
$info = curl_getinfo($ch);
foreach($info as $name=>$value)
echo "\n".$name.'='.$value;
echo "\nres= ".$result;
curl_close($ch);
return $result;
}
Вот результат отработки функции без ошибки (пакет менее 1024):
content_type=text/xml;charset=UTF-8
http_code=200
header_size=149
request_size=393
filetime=-1
ssl_verify_result=19
redirect_count=0
total_time=0.267345
namelookup_time=4.5E-5
connect_time=0.026682
pretransfer_time=0.155036
size_upload=258
size_download=17549
speed_download=65641
speed_upload=965
download_content_length=-1
upload_content_length=-1
starttransfer_time=0.267161
redirect_time=0
А вот при ошибке (пакет более 1024):
content_type=text/xml;charset=UTF-8
http_code=200
header_size=257
request_size=158
filetime=-1
ssl_verify_result=19
redirect_count=0
total_time=0.226429
namelookup_time=5.0E-5
connect_time=0.029792
pretransfer_time=0.158446
size_upload=1206
size_download=0
speed_download=0
speed_upload=5326
download_content_length=-1
upload_content_length=1206
starttransfer_time=0.184043
redirect_time=0
CURL_error: 18, transfer closed with outstanding read data remaining
$header[] = "Content-type: text/xml; charset:utf-8";
$header[] = "Content-length: ".strlen($xml);
вот это в принципе не прередавайте совсем :)
мб достигли максимального размера загрузки?
$header[] = "Content-type: text/xml; charset:utf-8";
$header[] = "Content-length: ".strlen($xml);
вот это в принципе не прередавайте совсем :)
Попробывал не помогло, все такой же результат.:(
Rednik добавил 10.11.2009 в 18:02
мб достигли максимального размера загрузки?
Так в том то и дело, что не то что до загрузки, до отправки пакета не доходит дело.
вспомнил я эту гадкую ошибку ...
изза курловской излишней "заботы".
впиши
$header[] = "Expect: ";
у меня в библиотеке это автоматически правится))
http://xp.helldude.ru/repositories/entry/dudecurl/trunk/libs/DudeCurl.php#L387
вспомнил я эту гадкую ошибку ...
изза курловской излишней "заботы".
впиши
$header[] = "Expect: ";
у меня в библиотеке это автоматически правится))
http://xp.helldude.ru/repositories/entry/dudecurl/trunk/libs/DudeCurl.php#L387
Все проблема решена, большой сенкс и респект!:)