segods
Новичок
POST & PROXY & PHP
Вот такая проблема, как видно из описания, от скрипта до сайта(сервера) ничего не доходит.
Использовал:
1.Denver ( работает, фаервол видит активность )
2.CCProxy ( Активности не замечает )
3.Самопальный HTTP-сервер на VB. ( Активности не замечает )
Вот исходник:
Надеюсь, вас не затруднит это. Посоветуйте, как лучше, и где здесь ошибка?
Вот такая проблема, как видно из описания, от скрипта до сайта(сервера) ничего не доходит.
Использовал:
1.Denver ( работает, фаервол видит активность )
2.CCProxy ( Активности не замечает )
3.Самопальный HTTP-сервер на VB. ( Активности не замечает )
Вот исходник:
PHP:
<?php
function get_proxy($proxy,$url,$post,$r)
{
$test=true;
$proxy=explode(':',$proxy);
$proxy[0]=trim($proxy[0]);
$proxy[1]=trim($proxy[1]);
if (preg_match('/[^0-9\.]/',$proxy[0]))
{ $proxy[0]=(gethostbyname($proxy[0])); }
$socket = @socket_create (AF_INET, SOCK_STREAM, 0);
if (!($socket < 0))
{
print "sdfjh";
if ($test) {echo 'socket created....<br>"'; flush();}
socket_set_nonblock($socket);
$result = @socket_connect ($socket, $proxy[0], $proxy[1]);
socket_set_block($socket);
switch(socket_select($r = array($socket), $w = array($socket), $f = array($socket), 5))
{
case 2:
if ($test) echo "<p style=\"color:#FF0000;\">[-]".$proxy[0].":".$proxy[1]."no</p><br>";
break;
case 1:
{
if ($test) echo "<p style=\"color:green;\">[+] ".$proxy[0].":".$proxy[1]." ok</p><br>";
if (!($result < 0))
{
if ($test) {echo 'socket connected.... '; flush();}
$size=strlen($post);
$http="POST $url HTTP/1.0\r\n".
"User-Agent: Opera/9.01 (Windows NT 5.1; U; ru)\r\n".
"Host: 192.168.1.69\r\n".
"Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1\r\n".
"Accept-Language: ru,en;q=0.9\r\n".
"Referer: [url]http://[/url]$proxy[0]\r\n".
"Proxy-Connection: close\r\n".
"Content-Length: $size\r\n".
"Content-Type: application/x-www-form-urlencoded\r\n\r\n"
.$post;
$out = '';
if ($test) {echo 'send HTTP : <hr> <pre>'.$http.'</pre><hr>'; flush();}
socket_set_nonblock($socket);
@socket_write ($socket, $http, strlen ($http));
if(!socket_last_error($socket))
{
while ($out = @socket_read ($socket, 512))
{
if ($test) {echo 'get ansver : <pre>'.$out.'</pre><br>'; flush();}
}
}
else
{
print socket_last_error($socket);
}
socket_set_block($socket);
@socket_shutdown($socket,2);
}
else
{
if ($test) {echo 'socket can not connect. "'.$proxy[0].'":"'.$proxy[1].'".... '; flush();}
}
}
break;
case 0:
if ($test) echo "<p style=\"color:#FF0000;\">[-] Timeout</p>";
break;
}
if ($test) {echo 'socket close.... '; flush();}
@socket_close ($socket);
}
else
{
if ($test) {echo 'can not create socket... '; flush();}
}
}
get_proxy("192.168.1.69:8888","http://192.168.1.69:1234/","ip='123'&proxy='456';",1);
?>