제로카운터 사용 관련 팁








팁1. register_globals옵션 관련..

설치 후..

php.ini의 register_globals = off일 경우

아래 부분을 파일 상단에 삽입 합니다.

===============================================

@error_reporting(E_ALL ^ E_NOTICE);

       @extract($HTTP_GET_VARS);

       @extract($HTTP_POST_VARS);

       @extract($HTTP_SERVER_VARS);

       @extract($HTTP_ENV_VARS);

===============================================



팁2.db용량 줄이자!!(ip체크 관련)

제로카운터는

모든 방문자의 IP 주소와 referer 를 db에 저장하기 때문에

방문객이 1만명, 10만명으로 늘어날수록 db의 용량은 엄청나게 늘어납니다.

그래서, 이 같은 문제점 때문에 제로카운터의 사용을 포기하는 경우가 많은데요.

IP와 referer DB를 5일분량만 남기고 그 이전의 것은 모두 삭제해버리면 이 문제는 간단히 해결됩니다.

물론, 카운터수는 그대로 유지되기 때문에 1년전의 카운터수도 알 수 있습니다.

단지, 별 필요없는 IP 정보와 referer 만 삭제하는 것이죠.



(제로카운터가 정상적으로 작동한다고 가정하고…)



zerocounter.php3 파일을 메모장으로 불러옵니다.



53번째 줄에 보면





//——————- 카운터 값 읽어오는 부분 ———————————–



// 전체

$total=mysql_fetch_array(mysql_query(“select unique_counter, pageview from counter_main where no=1”, $connect));

$count[total_hit]=$total[0];

$count[total_view]=$total[1];





부분이 있죠. 여기에



$date = 60 * 60 * 24 * 5;

mysql_query(“delete from counter_ip where (“.time().” – date) >= “.$date) or error(mysql_error());

mysql_query(“delete from counter_referer where (“.time().” – date) >= “.$date) or error(mysql_error());



를 넣어줍니다.



즉, 수정하면



//——————- 카운터 값 읽어오는 부분 ———————————————————————-

$date = 60 * 60 * 24 * 5;

mysql_query(“delete from counter_ip where (“.time().” – date) >= “.$date) or error(mysql_error());

mysql_query(“delete from counter_referer where (“.time().” – date) >= “.$date) or error(mysql_error());



// 전체

$total=mysql_fetch_array(mysql_query(“select unique_counter, pageview from counter_main where no=1”, $connect));

$count[total_hit]=$total[0];

$count[total_view]=$total[1];



이렇게 되는 것이죠. 새롭게 추가한 것 소스는 5일이 지난 IP 정보와 referer 정보를 지워버리는 것입니다.



zerocounter.php3 파일은 제로카운터가 실행될 때마다 로딩되기 때문에



자동으로 db를 지워줍니다.



이렇게 하면 db 용량도 별로 차지하지 않고 정기적으로 db를 삭제해줘야하는 불편도 없습니다.