개발 & 계발/PHP

CURL & fsockopen 업무 향상을 위한 샘플

건덕지만세 2014. 9. 15. 15:24
반응형

$ch = curl_init();
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,TRUE);
curl_setopt($ch, CURLOPT_URL, $oriUrl);
curl_setopt($ch, CURLOPT_REFERER, $refUrl);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_USERAGENT, "User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)");
curl_setopt($ch, CURLOPT_POST, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Authorization: Basic ".base64_encode("ktroot:nespot")));
curl_setopt($ch, CURLOPT_COOKIE, "Cookie: (null); (null)");
curl_setopt($ch, CURLOPT_POSTFIELDS, "UserID=admin&Password=sdecodeValue&decodeText=5d4c5e5e5a49");

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);

curl_setopt($ch, CURLOPT_HTTPHEADER, Array("Pragma: no-cache"));

 

 

$header = "POST ".$oriUrl." HTTP/1.1\r\n";

$header .= "HOST: ".$ipaddr.":".$port."\r\n";

$header .= "Accept-Language: ko-KR\r\n";

$header .= "User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)";

$header .= "Content-Type: application/x-www-form-urlencoded\r\n";

$header .= "Content-length: ".strlen($port_value)."\r\n";

$header .= "Cookie: ".$cookie."\r\n";

$header .= "\r\n";

$header .= $port_value;

 

$F_SOCK = socket_create(AF_INET,SOCK_STREAM, SOL_TCP);

if($F_SOCK === false)    die("소켓 생성 실패");

 

$F_CONN = socket_connect($F_SOCK,$ipaddr,$port);

if($F_CONN === false)    die("소켓 연결 실패");

 

socket_write($F_SOCK, $header, strlen($header));

 

$RESPONSE_DATA = "";

$resultSOCK = "";

 

while($RESPONSE_DATA = socket_read($F_SOCK,1024))

{

    $resultSOCK .= $RESPONSE_DATA;

}

 

socket_close($F_SOCK);