작은숲:위키노트/AWStats
개요
AWStats는 webalizer와 비슷한 아파치 웹 로그 분석 도구이다. 아파치 웹 로그를 분석한 후 보기 좋게 그래프로 정리해서 보여준다.
설치
CentOS에서 AWStats는 EPEL 저장소에 있으므로, 만약 EPEL 저장소가 지정되지 않았다면 EPEL 저장소부터 설정한다.
# yum install epel-release
그리고, AWStats는 mod_perl이 필요하므로 아직 설치하지 않았다면 설치해준다.
# yum install mod_perl
그리고 AWStats를 설치한다.
# yum install awstats
아파치 설정
설치하고 나면 /etc/httpd/conf.d/awstats.conf 파일이 자동으로 생성된다. 이 파일을 자신에 맞게 적당히 수정한다.
Alias /awstatsclasses "/usr/share/awstats/wwwroot/classes/"
Alias /awstatscss "/usr/share/awstats/wwwroot/css/"
Alias /awstatsicons "/usr/share/awstats/wwwroot/icon/"
ScriptAlias /awstats/ "/usr/share/awstats/wwwroot/cgi-bin/"
<Directory "/usr/share/awstats/wwwroot">
Options None
AllowOverride None
# 접속을 제한할 경우 아래 내용을 설정한다.
<IfModule mod_authz_core.c>
# Apache 2.4
# 접속할 IP 설정
Require ip 184.0.0.94/24
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order allow,deny
# 접속할 IP 설정
Allow from 184.0.0.94/24
Allow from ::1
</IfModule>
</Directory>
# 수동으로 mod_perl을 설치한 경우 아래 내용이 필요할지도 모른다.
<Directory "/usr/share/awstats/wwwroot/cgi-bin">
SetHandler perl-script
PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
Options +ExecCGI
</Directory>
<IfModule mod_env.c>
SetEnv PERL5LIB /usr/share/awstats/lib:/usr/share/awstats/plugins
</IfModule>
만약 아파치를 수동으로 설치한 경우라면 이 설정 파일을 아파치 설정 파일 httpd.conf의 마지막에 추가해준다.
Include /etc/httpd/conf.d/awstats.conf
새로운 설정을 적용하기 위해 아파치 재기동.
# service httpd restart
AWStats 설정
AWStats를 설치하면 /etc/awstats 디렉토리에 기본적인 설정 내용이 담긴 예제 설정 파일이 만들어진다. 이 파일을 복사한 후 수정해서 사용한다.
# cp /etc/awstats/awstats.localhost.localdomain.conf /etc/awstats/awstats.sample.conf
파일 이름 중 sample은 AWStats에게 분석할 대상을 알려줄 구분자 역할을 하기 때문에 자신의 호스트 이름이나 도메인으로 설정한다. 또한 이 이름은 나중에 작은숲:위키노트/브라우저로 AWStats에 접속할 때도 사용되기 때문에 구분하기 쉬운 이름으로 정하는 것이 좋다.
복사한 파일 awstats.sample.conf의 내용은 상당히 많지만 우선 기본적인 설정만 수정한다.
LogFile="/var/log/httpd/sample-access.log"
SiteDomain="sample.com"
HostAliases="www.sample.com"
LogFile 지시자는 아파치 접속 로그 파일을, SiteDomain 지시자는 분석할 사이트의 도메인을, HostAliases 지시자는 호스트 별칭을 쓰는 경우 그 설정한 도메인들을 가리킨다. 아파치 접속 로그 파일을 읽어서 분석하기 때문에 그 접속 로그 상에 기록된 도메인들을 설정해야 한다.
설정이 끝난 후 AWStats에게 방금 수정한 설정 파일을 가지고 분석하도록 한다.
# perl /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=sample -update
위 명령에서 -config=sample에는 설정 파일의 이름에 들어간 구분자를 적어야 한다. 이렇게 실행하면 AWStats는 /etc/awstats/awstats.sample.conf 파일을 읽어서 분석한다.
이제 이후에는 cron에 등록된 /etc/cron.hourly/awstats 파일로 인해 /etc/awstats 디렉토리 내에 있는 모든 설정 파일을 읽어 시간마다 업데이트를 하게 된다. 따라서 여러 도메인에 대한 분석을 해야 한다면 /etc/awstats 디렉토리에 적절한 설정을 한 설정 파일을 만들면 된다.
브라우저에서 AWStats 접속
모든 설정이 끝났다면 작은숲:위키노트/브라우저에서 AWstats에 접속할 수 있다.
http://sample.com/awstats/awstats.pl?config=sample
config=sample에서 sample은 설정 파일의 구분자로 준 도메인이다.
참고
- How to Setup AWStats (Apache Log Analyzer) on CentOS, RHEL and Fedora
- CentOS 6.6 에 awstat 설치하기
- Awstats
| 배포판 | |
|---|---|
| 서버 프로그램 | |
| 시스템 도구 | |
| 시스템 보안 | |
| 시스템 설정 | |
| HOWTO 문서 | |
| 사용자 설정 | |
| 활용 | |
| 명령어 | |