우리가 사는 세상을 모두 알기엔 인생은 너무 짧다.!!

사이트관리

서버 운영시 빠른 광고차단

거북선인 2018. 6. 21. 23:07
반응형

게시판 관리자로 IP차단하는 것도 좋겠지만 서버에 여러 홈페이지가 있다면 하나하나 적용 해주는 것도 귀찮을 것 같아요


php.ini 설정 중 auto_prepend_file 설정해서 POST,GET으로 들어오는 문자열 필터링 적용해 놨더니 조용해지네요.

필터링 필요하면 preg_match 항목에  추가해주면 바로 적용되요


그누보드에 직접 적용하기 위해서는 /config.php 나 /common.php 상단에 php 코드만 넣으시면 됩니다.


auto_prepend_file = "/etc/php_prepend_new.php" 


/etc/php_prepend_new.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
foreach($_GET as $query_string_variable => $tmpvalue){
    if(!is_array($tmpvalue)){
        if ( preg_match( "/(카지노|바카라|토토|네임드|몰카|tumblr|엘지에어콘|.au|search|충전|우주선|sound|마사지|건마|휴게텔|오피)/is" , $tmpvalue) ) exit;
        if ( preg_match("/union/i" , $tmpvalue) ) exit;
        if (preg_match("/'(.*?)or(.*?)'/si", $tmpvalue)) exit;
    }
}
 
 
if($_POST){
    foreach($_POST as $query_string_variable => $tmpvalue) {
 
        if(!is_array($tmpvalue)){
             if ( preg_match( "/(카지노|바카라|토토|네임드|몰카|tumblr|엘지에어콘|.au|search|충전|우주선|sound|마사지|건마|휴게텔|오피)/is" , $tmpvalue) ) exit;
            if ( preg_match( "/union/i" , $tmpvalue) ) exit;
            if (preg_match("/'(.*?)or(.*?)'/si", $tmpvalue)) exit;
        }
    }
}
 
 
?>


반응형