location.href랑 curl 차이 채택완료
언어 측면에서도 다르지만
get이나 post 필요없이
www.naver.com 를 호출해야한다고 할때
</p>
<p>location.href= "<a href="http://www.naver.com";랑" target="_blank" rel="noopener noreferrer">http://www.naver.com";랑</a></p>
<p>
-----------------curl------------------
</p>
<p>header('Content-Type: application/x-www-form-urlencoded');
$url = "<a href="http://www.naver.com";" target="_blank" rel="noopener noreferrer">http://www.naver.com";</a></p>
<p>$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);</p>
<p>
두개 차이가 뭘까요?
답변 3개
curl은 보통 api 접근이나 크롤링할때 사용하는 방법이라서.
네이버가 차단한것으로 보여집니다.
터미널에서 curl "http://naver.com"하면
결과값이 302 코드가 나옵니다.
이는 redirect 처리된 내용이라서.
웹브라우저의 접근이 아니면 차단하는 방법같아 보입니다.
location.href 는 당연히 웹브라우저의 javascript방법이니 지장이 없겠죠
답변에 대한 댓글 2개
location.href 는 웹브라우저에서 브라우저를 통한접근이고
curl 은 커맨드창 혹은 언어에서 header를 직접 확인하기 윈한 접근이니
호출되는 서버입장에서는 유사하겠지만
호출자가 다르니 판단가능해서 거절할수있는 내용이되서 같다고 할수없고
호출하는 입장에서도 사용하는 용도가 다르니 같다고 할수 없습니다.
내용을 조회하는 입장에서 내용만 본다면 비슷합니다.
댓글을 작성하려면 로그인이 필요합니다.
location.href는 웹브라우저가 네이버로 부터 직접 데이터를 받아들이는거고
curl은 일단 서버에서 네이버로 부터 데이터를 받아 사용자에게 보여주는 경우입니다.
완전 다른 것입니다.
그리고 네이버로 부터 curl이 작동되지 않는 경우는 대부분 curl사용법을 모르기 때문일 겁니다.
구글에서 php curl https로 검색해서 해당 부분을 추가 설정후 시도해 보시죠.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
localhost입니다.
정상적인 외부 서버면 location.href로 접근이나 curl로 접근이나 같은게 맞나요?