Skip to content


불펌 블로그 방지 이미지

밑의 글에서 생각했던 것을 구현.

아이디어는 매우 단순함 – 현재 구현은 더더욱 -_-;

  • 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픽셀 짜리 이미지의 색을 설정해야할 듯 하기도 싶고;

정상적인 – 원본 블로그에 해당 – 글이면 다음 화면이 나오게 됨

antispam01.png

정상적인 표시

반대로 퍼가서 다른 주소의 페이지에서 나오게 되면 중간에 들어있던 공백 이미지들이 크게 확장[...]

as.png

불펌하게 되면 보이는 화면

뭐 이런식으로 주소가 나오는게 아니라 엄한 사진이 나온다거나, “매너있는 블로깅을 합시다” 정도의 문구가 찍힌 이미지가 나와도 재미있을듯 (야)

일단 WordPress 용 플러긴을 만들어보고 잘 되면 태터 용도 생각해봐야;

이 저작물은 별도로 명시하지 않은 경우, Creative Commons Attribution-Share Alike 3.0 Unported License에 따라 이용하실 수 있습니다.

No related posts.

Posted in Computer.

Tagged with , .


4 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

  1. Azyu says

    오오… 군주님… 오오…

  2. rein says

    오오… 총수님… 오오…(?)

    총수님 베리즈 작업 쫌[...]

  3. Dish says

    오오… 근육간지남… 오오…

  4. rein says

    Dish/ 그건 아쥬님 블로그 가서 ㄱㄱ[...]



Some HTML is OK

혹은 트랙백 보내기 / or, reply to this post via trackback.