[네이버페이] 상품이미지URL 일반프로토콜(http://) 유지호출 채택완료
몇번째 시도인지 모르겠습니다ㅠㅠ
찜등록 쿼리스트링 ITEM_IMAGE, ITEM_THUMB 항목에 전달되는 상품이미지URL 문제가 있습니다.
이전 요청드린 상품이미지URL은 접근 확인되었으나, 외 다수 상품의 이미지URL 접근에 실패하고 있어 메일드립니다.
상품이미지 혹은 상품정보XML URL을 일반(http://)으로 요청 시, TLS/SSL(https://)로 Redirect 되는 요청 횟수가 많아 접근에 실패하는 것으로 확인됩니다.
또한, 일부 TLS/SSL 인증서의 경우 네이버페이 서비스에서 데이터 수집에 실패할 수 있어 상품이미지와 상품정보XML URL에 대해 일반 프로토콜로 요청 시 TLS/SSL(https://)가 아닌 일반프로토콜 (http://)로 유지·호출되도록 수정 부탁드립니다.
라는 답변을 받았습니다
기존 lib/naverpay.lib.php 파일에서 URL에 http:https://도메인... 으로 중복되는 부분이 있어서
</p>
<p>function get_naverpay_item_image_url($it_id)</p>
<p>{</p>
<p> global $g5;</p>
<p> </p>
<p> $sql = " select it_id, it_img1, it_img2, it_img3, it_img4, it_img5, it_img6, it_img7, it_img8, it_img9, it_img10 from {$g5['g5_shop_item_table']} where it_id = '$it_id' ";</p>
<p> $row = sql_fetch($sql);</p>
<p> </p>
<p> if(!$row['it_id'])</p>
<p> return '';</p>
<p> </p>
<p> $url = '';</p>
<p> </p>
<p> for($i=1;$i<=10; $i++) {</p>
<p> $file = G5_DATA_PATH.'/item/'.$row['it_img'.$i];</p>
<p> if(is_file($file) && $row['it_img'.$i]) {</p>
<p> $size = @getimagesize($file);</p>
<p> if($size[2] < 1 || $size[2] > 3)</p>
<p> continue;</p>
<p> </p>
<p> $url = str_replace(G5_PATH, G5_URL, $file);</p>
<p> </p>
<p> //추가한 부분</p>
<p> $url = preg_replace('#^https:#', 'http:', $url);</p>
<p> </p>
<p> //if( isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1) ){</p>
<p> // $url = preg_replace('#^https:#', '', $url);</p>
<p> // </p>
<p> // $port_str = ':'.$_SERVER['SERVER_PORT'];</p>
<p> // </p>
<p> // if( strpos($url, $port_str) !== false ){</p>
<p> // $url = str_replace($port_str, '', $url);</p>
<p> // }</p>
<p> //}</p>
<p> </p>
<p> //TLS(SSL/HTTPS) 프로토콜 사용 시 네이버페이/네이버 쇼핑 서버가 해당 경로로 접근하여 데이터를 취득할 수 없으므로, 반드시 http 를 사용해야 함</p>
<p> //$url = (preg_match('#^http:#', $url) ? '' : 'http:').$url;</p>
<p> </p>
<p> break;</p>
<p> }</p>
<p> }</p>
<p> </p>
<p> return $url;</p>
<p>}</p>
<p>
이렇게 수정했는데 혹시 주석처리한 if부분때문일까요?
if문을 살리고 하단에 $url = preg_replace('#^https:#', 'http:', $url);로 수정하면 될런지요ㅠㅠ
답변 3개
리다이렉트가 많다는 거 보니
http:// 로 시작하는 도메인주소가 자동으로 https:// 로 변경되는게 설정되어
있지 않을까 싶네요
그렇다면 저렇게 주소를 바꿔도 https:// 로 다시 접근하기 때문에 리다이렉트가 많다고 하는거 같습니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
영카트 내에는 없을거 같고
.htaccess
에서 rewrite 설정되어 있거나
아파치 설정중에 rewrite 로 설정되어 있을수 있습니다.
답변에 대한 댓글 1개
해당 부분은 제가 알지못하는 부분이라ㅠㅠ
개발자분께 도움을 받아야겠네요ㅜㅜ
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
혹시 영카트 내에 https로 접근하도록 설정하는 부분이 따로 있나요?