CURL 쿠키 저장했다가 서버로 보내기(전송하기) - 로그인처리
로그인은 보통 쿠키 방식을 사용합니다. 세션도 아이디는 쿠키로 되어 있기 때문에 사실상 로그인은 쿠키를 사용하게 됩니다. 인증을 복잡하고 힘들고 IP까지 넣어서 하는곳이 아니라면 일반적인 경우는 아래 처럼 쿠키를 받아서 그대로 보내주면 문제가 되지 않는 경우가 많습니다.
$USER_AGENT = '유저 에이전트';
$getURL = '호출할 주소';
$aHttpHd = array(http 헤더);
$file_cookie = 쿠키저장위치
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $getURL);
curl_setopt($ch, CURL_HTTP_VERSION_1_1, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // If url has redirects then go to the final redirected URL.
curl_setopt($ch, CURLOPT_USERAGENT, $USER_AGENT);
curl_setopt($ch, CURLOPT_TIMEOUT, 3);
curl_setopt($ch, CURLOPT_HEADER, 1); // 리스폰 헤더를 보려고 할때.
curl_setopt($ch, CURLOPT_HTTPHEADER, $aHttpHd);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // 1로 해야 변수로 리턴되어 파일로 저장을 시킬 수 있다.
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 서버인증서 유효성을 검사하지 아니한다.
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
// curl_setopt($ch, CURLOPT_SSLVERSION, 0); // tls 버전을 말하는것임
curl_setopt($ch, CURLOPT_COOKIEJAR, $file_cookie); // 서버에서 받은것 저장하기
curl_setopt($ch, CURLOPT_COOKIEFILE, $file_cookie); // 서버로 보내주는것
$response = curl_exec($ch);
$aHeadInfo = curl_getinfo($ch);
curl_close($ch);