로그인 유지 관련 문의

로그인 유지 관련 문의

QA

로그인 유지 관련 문의

본문

로그인을 유지하고 싶은데, 로그인 유지가 안됩니다. 

고수님들의 고견 부탁드려요~^^

 

$cookie_nm = 'xml/cookie.txt';
$url="https://accounts.interpark.com/login/submit";
$send_data = "userId=ooooo&userPwd=oooooo";
                    
                    $ch = curl_init(); 
                    curl_setopt ($ch, CURLOPT_URL,$url); //접속할 URL 주소 
                    curl_setopt ($ch, CURLOPT_POST, 1); 
                    curl_setopt ($ch, CURLOPT_POSTFIELDS, $send_data); 
                    curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookie_nm);
                    curl_setopt ($ch, CURLOPT_COOKIEFILE, $cookie_nm); 
                    curl_setopt ($ch, CURLOPT_HEADER, 0);
                    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
                    curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
                    curl_setopt ($ch, CURLOPT_COOKIESESSION, true);
                    curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, false);
                    $data=curl_exec($ch);

$url2="http://www.interpark.com/mypage/order/OrderSearchList.do?_method=initial&logintgt=mypage&sid1=gb&sid2=svc";
                $ch = curl_init(); 
                curl_setopt ($ch, CURLOPT_URL,$url2); //접속할 URL 주소 
                curl_setopt ($ch, CURLOPT_HEADER, 0); 
                curl_setopt ($ch, CURLOPT_POST, 1); 
                curl_setopt ($ch, CURLOPT_POSTFIELDS, $send_data); 
                curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookie_nm); 
                curl_setopt ($ch, CURLOPT_COOKIEFILE, $cookie_nm);
                curl_setopt ($ch, CURLOPT_COOKIESESSION, true);
                curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
                curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
                curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, false);
                $data1=curl_exec($ch);
                curl_close($ch);
 

이 질문에 댓글 쓰기 :

답변 4

위의 코드로 로그인이 안되지 않으세요?

사양이 다른걸로 알고 있는데요, 캡챠 우회도 필요하구요.

PHP CURL에서 Cooki값을 읽어서 관리하도록 정의하였는데요.

해당 사이트에서 로그인 안되는거 같아서 우선적으로 로그인 정보가 맞는데 체크를 해보시는게 좋습니다.

그리고 이후 쿠키값을 정상적으로 가지고 오는지도 체크 해보시기 바랍니다.

 

코드상으로는 헤더가 부족합니다.

헤더는 브라우저에서 직접 로그인 하면서 네트워크 분석으로 어떤 헤더를 어떤 방식으로 넘기는지 확인 후 그대로 보내야합니다.

 

아래 코드는 예시이며 사이트마다, 동일 사이트라도 메뉴마다 헤더가 다른 경우가 많으니 확인 후 넣고 빼고 해보세요.

 

레퍼러를 헤더로 보내는 경우, curl 속성으로 보내는 경우가 있으니 이것도 테스트 해보세요.

 

쿠키는 파일에 써지니까 제대로 쿠키 남는지 보세요.

 

$referer = "https://~~~~~~~";

    $headers = array(
        "accept: */*",
        "accept-encoding: gzip, deflate, br",
        "accept-language: ko-KR,ko;q=0.9,en-US;q=0.8,en;q=0.7,ja;q=0.6",
        "origin: ",
        "User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"
    );

    curl_setopt($oCurl, CURLOPT_REFERER, $referer);
    curl_setopt($oCurl, CURLOPT_HTTPHEADER, $headers);

답변을 작성하시기 전에 로그인 해주세요.
전체 17
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT