웹마스터 팁

이게 팁이 될지는 모르겠지만,
유용하게 사용될 일이 있으면 좋겠습니다.

일단 다 아시겟지만 snapshot이란
http://www.snap.com/
여기서 무료로 제공하는 페이지의 링크를 찾아 그것을 썸네일로 미리보기 해주는 서비스입니다.

그런데 이것이 유용하기는 한데
이것이 인코딩 문제나 로딩이 오래걸린다는 문제점을 안고 있습니다.
(저혼자의 생각일수 있습니다.)

그래서 링크에 따른 썸네일만 가져와서 보여주는 방법을 소개합니다.
http://www.snap.com/
에서 서비스로 제공하는 내용은 아니고 일종의 편법입니다.

먼저 해당 사이트에서 계정을 받으시고
계정을 받으시면
자바스크립트를 주는데 그 것을 열어보면
key 부분이 보입니다.
그게 아니라면
테스트로 설치해놓고
링크의 미리보기를 오른쪽 마우스로 클릭
이미지 정보를 보면 key값이 보입니다.

사용법
$key = '자신의 key';
$url = urlencode($url );//미리보기할 url
$ip = $_SERVER['REMOTE_ADDR'];//클라이언트 ip
$referer = urlencode('http://'+ ' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING']);//리퍼러

$img_url = preg_replace("`:::(.+):::`Ue", "$\1", 'http://shots.snap.com/preview/?url=:::url:::&key=:::key:::1&rp=null&has_img=0&ol=0&ex=0&ad=unknown&ip=:::ip:::&ua=Mozilla%2F4.0+%28compatible%3B+MSIE+7.0%3B+Windows+NT+5.1%3B+.NET+CLR+2.0.50727%29&nl=0&referrer=:::referer:::&svc=&goto=%25URL(%EC%9C%BC)%EB%A1%9C%20%EC%9D%B4%EB%8F%99&direct=1&sc=0');

이렇게 미리보기 이미지 주소를 생성한다음 이미지 태그로 불러오면 됩니다.

그런데

기존에 같은 주소로 미리보기가 저장된것이 없는 경우에는
캡쳐중입니다. 이미지가 보일때도 있습니다.

또 하부경로인데도 불구하고 메인이 보이거나, 예전 디자인의 캡쳐화면이 나올경우도 있습니다.

두경우 모두 새로이 캡쳐가 진행중일때 나타나는 현상인것 같으며
5분정도 후에 자동으로 새로이 바뀌는 것 같습니다.

예제) http://chancein.com/svc/screenshot.php?s=http%3A%2F%2Fnzeo.com