멜

자동글 방지 팁입니다.

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

우선 메인에서
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건
+
제목 글쓴이 날짜 조회
12-08-29 조회 3,908
12-08-07 조회 3,579
12-08-03 조회 3,500
12-07-31 조회 3,615
12-07-30 조회 3,573
12-07-16 조회 3,783
12-07-15 조회 3,482
12-07-07 조회 3,480
12-07-06 조회 3,590
12-07-03 조회 3,632
12-06-29 조회 3,215
12-06-22 조회 3,583
12-06-17 조회 3,701
12-05-21 조회 3,772
12-05-02 조회 3,357
12-05-02 조회 4,147
12-05-02 조회 3,259
12-04-30 조회 3,413
12-04-30 조회 3,123
12-03-17 조회 3,941
12-03-10 조회 3,336
12-03-08 조회 3,753
12-03-03 조회 3,514
12-02-27 조회 4,927
12-02-17 조회 4,278
12-02-16 조회 4,430
12-02-03 조회 3,259
12-01-31 조회 3,011
12-01-24 조회 3,075
12-01-17 조회 3,831
12-01-05 조회 3,386
11-12-30 조회 3,002
11-12-23 조회 4,610
11-12-08 조회 3,366
11-12-07 조회 4,347
11-11-27 조회 3,771
11-11-25 조회 4,101
11-11-23 조회 3,490
11-11-22 조회 3,444
11-11-09 조회 3,177
11-10-23 조회 3,076
11-10-19 조회 3,052
11-10-08 조회 2,761
11-10-04 조회 2,773
11-10-04 조회 5,216
11-09-01 조회 4,273
11-08-13 조회 2,450
11-08-06 조회 3,139
11-07-11 조회 3,536
11-06-27 조회 2,905
11-06-21 조회 2,542
11-06-13 조회 2,355
11-06-07 조회 2,367
11-05-26 조회 2,361
11-04-20 조회 2,677
11-03-21 조회 2,766
11-03-18 조회 2,462
11-03-11 조회 2,502
11-02-07 조회 2,321
11-01-18 조회 2,638
11-01-12 조회 2,362
11-01-06 조회 2,481
10-12-10 조회 2,742
10-12-09 조회 2,405
10-12-08 조회 4,992
10-11-29 조회 2,528
10-11-28 조회 2,734
10-11-28 조회 2,587
10-11-19 조회 2,770
10-11-04 조회 2,677
10-10-21 조회 2,387
10-10-19 조회 3,337
10-10-12 조회 2,660
10-10-07 조회 2,473
10-09-30 조회 3,445
10-09-17 조회 3,842
10-09-17 조회 3,807
10-05-31 조회 3,472
09-12-31 조회 3,613
09-07-23 조회 4,923
08-09-16 조회 3,171
08-09-06 조회 2,890
08-09-04 조회 3,324
08-08-16 조회 4,376
08-08-15 조회 3,250
08-08-14 조회 4,462
08-08-12 조회 3,822
08-07-23 조회 2,745
08-07-10 조회 3,688
08-07-04 조회 2,913
08-06-27 조회 7,567
08-06-19 조회 4,853
08-05-27 조회 5,467
08-05-25 조회 5,295
08-05-23 조회 3,367
08-05-23 조회 4,506
08-05-21 조회 4,889
08-05-20 조회 4,013
08-05-20 조회 3,248
08-04-18 조회 4,281