멜

자동글 방지 팁입니다.

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

우선 메인에서
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건
+
제목 글쓴이 날짜 조회
10-05-31 조회 2,985
10-04-17 조회 4,755
10-03-23 조회 5,916
10-02-26 조회 3,442
10-02-23 조회 3,393
10-02-11 조회 4,017
10-02-09 조회 3,065
10-01-26 조회 3,521
10-01-23 조회 6,873
10-01-19 조회 3,569
10-01-13 조회 3,771
09-12-06 조회 4,801
09-11-24 조회 4,271
09-11-19 조회 3,133
09-11-11 조회 3,733
09-08-30 조회 3,220
09-08-12 조회 3,229
09-07-21 조회 3,385
09-07-19 조회 3,269
09-07-11 조회 3,194
09-06-15 조회 2,970
09-05-29 조회 3,135
09-05-28 조회 3,573
09-05-05 조회 3,448
09-04-07 조회 3,654
09-02-23 조회 4,446
09-02-17 조회 3,183
09-02-17 조회 2,561
09-02-09 조회 2,670
09-01-23 조회 3,483
09-01-17 조회 4,302
09-01-08 조회 3,249
08-11-07 조회 4,518
08-11-01 조회 4,995
08-10-30 조회 3,587
08-10-16 조회 3,514
08-10-02 조회 2,659
08-09-22 조회 3,984
08-09-22 조회 2,952
08-09-20 조회 5,444
08-09-20 조회 4,518
08-09-20 조회 3,605
08-09-20 조회 2,978
08-09-20 조회 3,175
08-09-20 조회 4,156
08-09-20 조회 3,658
08-09-20 조회 3,244
08-09-18 조회 3,504
08-09-06 조회 3,087
08-09-06 조회 2,830
08-09-05 조회 3,489
08-09-05 조회 5,700
08-09-03 조회 4,503
08-09-03 조회 2,761
08-07-31 조회 3,217
08-07-18 조회 3,817
08-06-19 조회 3,161
08-06-15 조회 3,154
08-06-14 조회 3,613
08-05-23 조회 2,854
08-05-13 조회 2,753
08-04-22 조회 4,433
08-04-22 조회 5,149
08-04-22 조회 6,905
08-04-17 조회 3,045
08-04-17 조회 3,661
08-04-17 조회 3,733
08-04-17 조회 5,992
08-04-17 조회 3,189
08-04-17 조회 3,514
08-04-06 조회 3,578
08-04-05 조회 3,160
08-04-04 조회 7,216
08-04-04 조회 4,506
08-04-04 조회 3,858
08-04-04 조회 4,050
08-04-04 조회 2,924
08-04-04 조회 2,709
08-04-04 조회 2,747
08-04-04 조회 2,964
08-04-04 조회 2,697
08-04-04 조회 2,682
08-04-04 조회 4,187
08-04-03 조회 2,728
08-04-03 조회 3,933
08-04-02 조회 3,141
08-04-02 조회 2,877
08-03-25 조회 3,736
08-03-11 조회 3,497
08-03-11 조회 2,996
08-03-11 조회 2,957
08-03-11 조회 2,756
08-03-11 조회 2,534
08-03-11 조회 2,336
08-03-11 조회 2,402
08-03-07 조회 2,966
08-03-05 조회 2,685
08-02-27 조회 2,945
08-02-21 조회 2,805
08-02-21 조회 3,364