밑의 글에서 생각했던 것을 구현.
아이디어는 매우 단순함 – 현재 구현은 더더욱 -_-;
- HTTP Referer로 전달되어오는 부분 (HTTP 리퀘스트 쪽에 헤더로 넘어옴)을 해석해서 upnl.org 가 있으면 1 pixel by 1 pixel의 하얀 투명 이미지를 전송
- 그렇지 않은 경우 800 by 40의 “Not allowed referer: 실제 리퍼한 주소” 라고 적힌 이미지가 전송됨
구현한 코드는 매우 짧은 PHP 코드다 – libpng와 php-gd 가 설치된 곳에서 실행 가능함
header( "Content-type: image/png" );if( FALSE != strpos( $_SERVER["HTTP_REFERER"], "upnl.org" ) ) { imagepng( imagecreatefrompng( "pixel.png" ) ); } else { $im = imagecreatetruecolor( 800, 40 ); $color = imagecolorallocate( $im, 255, 255, 255 ); imagestring( $im, 10, 10, 10, "Not allowed referer: ".$_SERVER["HTTP_REFERER"], $color ); imagepng( $im ); imagedestroy( $im ); }
이런 코드로 위의 내용이 구현된다. 실제로 플러긴을 짠다면 리퍼러 부분이 좀더 복잡해지거나 하겠지만 – 아마 설정 가능한 필드로 해야 할 듯 – 구현 자체는 어렵지 않을 것 같다. 다만 이미지 생성하는건 부담이 가니 적절한 짤방(…)이미지를 쏴주는게 좋을듯함;
1 by 1 투명 이미지는 IE 6.0에서는 투명화가 안되서 희게 보이더라 -_-; – 아마도 PNG 지원이 잘 안되는 6.0 문제인 것으로 보이며 firefox와 opera에선 잘 보임; IE 7.0에선 투명화 잘 되고 있기도하고 ( –)
…그런 의미에서 투명화 안될 때를 대비해서 1픽셀 짜리 이미지의 색을 설정해야할 듯 하기도 싶고;
정상적인 – 원본 블로그에 해당 – 글이면 다음 화면이 나오게 됨
반대로 퍼가서 다른 주소의 페이지에서 나오게 되면 중간에 들어있던 공백 이미지들이 크게 확장[…]
뭐 이런식으로 주소가 나오는게 아니라 엄한 사진이 나온다거나, “매너있는 블로깅을 합시다” 정도의 문구가 찍힌 이미지가 나와도 재미있을듯 (야)
일단 WordPress 용 플러긴을 만들어보고 잘 되면 태터 용도 생각해봐야;
오오… 군주님… 오오…
오오… 총수님… 오오…(?)
총수님 베리즈 작업 쫌[…]
오오… 근육간지남… 오오…
Dish/ 그건 아쥬님 블로그 가서 ㄱㄱ[…]