PDA

Просмотр полной версии : Почему не идет авторизация на mail.ru?


попугай
21.09.2008, 20:51
Вот скрипт, который должен авторизоввываться на foto.mail.ru - вроде все должно пахать -но коннекта нет почему то.. кто что скажет?


<?php

function postzapros($host, $script, $ref, $cont){
$respons="";
$postsock = fsockopen($host, 80, $errno, $errstr, 30);
if(!$postsock){
echo $errstr($errno);
}else{
$head ="POST $script HTTP/1.1\r\n";
$head .="Host: $host\r\n";
$head .="User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14\r\n";
$head .="Accept-Language: ru,ru-RU;q=0.9,en;q=0.8\r\n";
$head .="Keep-Alive: 300\r\n";
$head .="Connection: keep-alive\r\n";
$head .="Referer: $ref\r\n";
$head .="Content-Type: application/x-www-form-urlencoded\r\n";
$head .="Content-Length: ".strlen($cont)."\r\n";
$head .="\r\n$cont\r\n";
}
fwrite($postsock, $head);
while(!feof($postsock)){
$respons .=fgets($postsock, 1024);
}
fclose($postsock);
return $respons;
}
$cont = "page=http%3A%2F%2Ffoto.mail.ru%2Fcgi-bin%2Fphoto%2Falbums&Login=логин&Domain=mail.ru&Password=пароль";
echo postzapros("foto.mail.ru", "/cgi-bin/auth", "http://foto.mail.ru/", $cont);
?>


Точнее конечно коннект есть - но все так долго идет... около минуты где то

mr.The
21.09.2008, 21:33
$head .="\r\n$cont\r\n";
неверно. надо так:
$head .="\r\n\r\n$cont";

и это
$head .="Keep-Alive: 300\r\n";
$head .="Connection: keep-alive\r\n";
лучше заменить на $head .="Connection: close\r\n";

попугай
21.09.2008, 22:07
$head .="Connection: close\r\n";


Причина в этом оказывается....

Спасибо огромное, а то я уже задолбался... не мог понять в чем дело...