location.href랑 curl 차이

location.href랑 curl 차이

QA

location.href랑 curl 차이

본문

언어 측면에서도 다르지만

 

get이나 post 필요없이

 

www.naver.com 를 호출해야한다고 할때


location.href= "http://www.naver.com";랑

-----------------curl------------------


header('Content-Type: application/x-www-form-urlencoded');
$url = "http://www.naver.com";
$ch = curl_init();
   
curl_setopt($ch, CURLOPT_URL, $url);               //URL 지정하기
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);    //요청 결과를 문자열로 반환 
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);      //connection timeout 10초 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);   //원격 서버의 인증서가 유효한지 검사 안함
$response = curl_exec($ch);
curl_close($ch);

 

두개 차이가 뭘까요?

이 질문에 댓글 쓰기 :

답변 3

curl은 보통 api 접근이나 크롤링할때 사용하는 방법이라서.

네이버가 차단한것으로 보여집니다.

 

터미널에서 curl "http://naver.com"하면

결과값이 302 코드가 나옵니다.

이는 redirect 처리된 내용이라서. 

 

웹브라우저의 접근이 아니면 차단하는 방법같아 보입니다.

location.href 는 당연히 웹브라우저의 javascript방법이니 지장이 없겠죠


location.href 는 웹브라우저에서 브라우저를 통한접근이고
curl 은 커맨드창 혹은 언어에서 header를 직접 확인하기 윈한 접근이니

호출되는 서버입장에서는 유사하겠지만
호출자가 다르니 판단가능해서 거절할수있는 내용이되서 같다고 할수없고

호출하는 입장에서도 사용하는 용도가 다르니 같다고 할수 없습니다.
내용을 조회하는 입장에서 내용만 본다면 비슷합니다.

단순히 www.naver.com  이 페이지를 실행한다는 측면에서는 차이는 없습니다.  다른 차이라면  curl 은 헤더나 기타 정보를 추가 변경해서 보낼수 있겠습니다.

location.href는 웹브라우저가 네이버로 부터 직접 데이터를 받아들이는거고

curl은 일단 서버에서 네이버로 부터 데이터를 받아 사용자에게 보여주는 경우입니다.

완전 다른 것입니다.

 

그리고 네이버로 부터 curl이 작동되지 않는 경우는 대부분 curl사용법을 모르기 때문일 겁니다.

구글에서 php curl https로 검색해서 해당 부분을 추가 설정후 시도해 보시죠.

 

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

회원로그인

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