멜

자동글 방지 팁입니다.

· 2008-07-08 (화) 21:50:53 · 3080

우선 메인에서
session_start();
$main_page="y";
session_register("main_page");
이런식으로 세션을 하나 만듭니다.

그리고 deny_invalid.php 라는 파일을 만들어서 모든 페이지들이 이 파일을 포함시키도록 합니다.
그리고 파일내용에 다음과 같이 부정 접속자를 걸려내서 차단목록을 작성하도록 만듭니다.

<?
session_start();

$SERVER_ROOT=$_SERVER["DOCUMENT_ROOT"];
$REMOTE_ADDR=$_SERVER["REMOTE_ADDR"];
$REQUEST_URI=$_SERVER["REQUEST_URI"];

//echo $REMOTE_ADDR;

/** 메인페이지를 통해서 들어오도록 강요 **/
if($HTTP_SESSION_VARS['main_page']!="y"){ exit; }

/** 허용 클라이언트인지 검사 **/
$is_admin=false;
if(in_array($REMOTE_ADDR,array("119.66.185.XX"))){ $is_admin=true;return true; }

/** 거부 클라이언트인지 검사 **/
$deny_list=implode(",",file("$SERVER_ROOT/deny.list"));
if(strpos($deny_list,$REMOTE_ADDR)!==false){ header("HTTP/1.1 403 Forbidden");exit; }

/** 불량 접속자인지 검사 **/
function add_bad_client($detail){
 global $SERVER_ROOT;
 global $REMOTE_ADDR;
 $fp=fopen("$SERVER_ROOT/XX.list","a+");
 fwrite($fp,"[".date("Y-m-d H:i:s",time())."] $REMOTE_ADDR ".$detail."\r\n");
 fclose($fp);
 header("HTTP/1.1 403 Forbidden");
}

list($usec, $sec) = explode(" ",microtime());
$access_time=((float)$usec+(float)substr($sec,7));

$access_table=$HTTP_SESSION_VARS['access_table'];
$access_table[$REQUEST_URI]["call"]++;
$access_table[$REQUEST_URI]["time"][]=$access_time;
session_register("access_table");

 /**
 특정페이지의 호출 횟수가 비이상적으로 많은 경우
 불량 접속자로 처리한다.
 **/
[로직부분]

 /**
 페이지를 호출하는 간격이 너무 빠른 경우
 불량 접속자로 처리한다.
 **/
 [로직부분]

?>

[이 게시물은 관리자님에 의해 2011-10-31 17:12:10 PHP & HTML에서 이동 됨]
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
11-08-16 조회 2,448
11-08-16 조회 2,434
11-08-12 조회 2,274
11-08-02 조회 2,847
11-07-27 조회 2,228
11-07-25 조회 2,343
11-06-28 조회 2,538
11-06-06 조회 4,054
11-06-04 조회 2,630
11-04-25 조회 6,213
11-04-22 조회 2,714
11-04-21 조회 2,946
11-04-08 조회 3,355
11-03-31 조회 2,866
11-03-20 조회 3,296
11-03-10 조회 2,896
11-03-04 조회 3,213
11-03-03 조회 2,949
11-02-26 조회 4,380
11-02-14 조회 5,728
11-02-08 조회 3,334
11-01-30 조회 5,420
11-01-14 조회 5,225
11-01-14 조회 3,773
11-01-14 조회 2,920
11-01-14 조회 2,956
11-01-14 조회 3,110
11-01-12 조회 2,881
11-01-07 조회 4,531
10-12-29 조회 2,545
10-12-22 조회 2,497
10-12-05 조회 5,906
10-11-22 조회 5,270
10-11-13 조회 3,642
10-10-27 조회 3,244
10-10-21 조회 2,948
10-09-21 조회 2,950
10-09-17 조회 3,009
10-09-15 조회 3,454
10-09-14 조회 4,054
10-05-18 조회 2,946
10-02-17 조회 4,387
10-02-12 조회 3,143
09-12-14 조회 5,208
09-12-14 조회 6,076
09-09-19 조회 4,428
09-08-16 조회 6,286
09-07-22 조회 5,688
09-04-13 조회 3,086
09-03-15 조회 5,100
09-03-05 조회 3,930
09-02-09 조회 2,877
08-12-30 조회 3,063
08-12-06 조회 3,258
08-11-30 조회 3,603
08-10-18 조회 4,448
08-10-08 조회 3,834
08-09-19 조회 4,406
08-09-05 조회 3,036
08-09-05 조회 5,137
08-09-05 조회 3,011
08-09-05 조회 3,620
08-09-05 조회 3,528
08-09-01 조회 4,544
08-08-07 조회 2,792
08-06-08 조회 3,259
08-06-02 조회 2,867
08-05-26 조회 5,282
08-05-09 조회 4,342
08-04-22 조회 3,954
08-04-17 조회 4,528
08-04-17 조회 5,602
08-04-17 조회 3,745
08-04-17 조회 8,731
08-04-17 조회 4,642
08-04-17 조회 4,555
08-04-09 조회 3,096
08-03-31 조회 3,578
08-03-26 조회 3,295
08-03-25 조회 3,583
08-03-25 조회 4,004
08-03-25 조회 4,035
08-03-25 조회 3,700
08-03-25 조회 3,594
08-03-25 조회 3,597
08-03-25 조회 5,288
08-02-03 조회 5,373
08-01-18 조회 6,666
08-01-17 조회 3,959
08-01-17 조회 3,778
08-01-12 조회 4,084
08-01-08 조회 3,391
07-12-28 조회 4,669
07-12-04 조회 3,556
07-11-30 조회 5,160
07-11-30 조회 5,760
07-11-02 조회 4,054
07-10-24 조회 4,035
07-10-24 조회 3,317
07-10-24 조회 3,425