из сокета не возвращается EOF

Keil

Guest
из сокета не возвращается EOF

при работе с сокетом, случается сабжевая ситуация, т.е. при чтении из сокета если не сделать дай на определённой линии, то скрипт висит до таймаута.
как можно вылечить ?

local: RedHat, php 5.0.3
remote: Microsoft-IIS/5.0
 

Keil

Guest
Код:
$request_all = "GET ..."
$sc = fsockopen(SERVER_IP, SERVER_PORT, $errno, $errstr,10) or die( "$errstr ($errno)<br />\n");

if(false === fwrite($sc, $request_all,strlen($request_all)))
{
	die("couldn't write to socket request_all");
}
echo "<b>request_all written successfully</b><br />";
$redir_header_gen = '';
$i = 0;
while($redir_header = fread($sc, 4096))
{
	$redir_header_gen .= $redir_header;
	 if(++$i == 2) {break;}
}
 

Keil

Guest
$request_all =
"POST http://xxx HTTP/1.0
Accept: image/gif ...
Referer: http://yyy
Content-Type: application/x-www-form-urlencoded
Proxy-Connection: Keep-Alive
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
Host: xxx
Content-Length: 1421
Pragma: no-cache
Cookie: ...

here post content

";
 

Keil

Guest
не понял ? раньше без этого работало, где закрывать конекшн ? если у меня висит цикл
while($line = fgets($sc, 256))
{
do_smth();
}

в хедере запроса ? не помогло, также висит
 
Сверху