서버(Server)를 아파치로 구축했다면 내 서버에
- 몇명이 접속 했는지,
- 어떤 페이지가 가장 호출되었는지,
- 어느 국가에서 접속했는지,
- 어떤 IP에서 접근했는지,
- 머무른 시간은 어떠한지,
- 어떤 파일을 다운로드 받았는지 등
수 많은 정보를 서버로그를 통해 다음과 같이 분석할 수 있습니다.
우분투환경에서 아파치 서버로그는 awstats
를 이용하여 분석합니다.
1. awstats 패키지 설치
- 다음 명령어로 awstats를 설치합니다.
- geo 라이브러리는 방문자를 나라별로 분류해서 볼 수 있게 하기위해 설치합니다.
$ sudo apt-get install awstats libgeoip1 libgeoip-dev libgeo-ip-perl
2. awstats 환경 설정
$ sudo vim /etc/awstats/awstats.conf
- 122번째줄 : LogFormat=4 를 LogFormat=1 로 변경. ubuntu apache 기본값이 1번입니다.
- 153번째줄 : SiteDomain=”” 를 SiteDomain=”mydomain.com” 로 변경. 작업중인 파일명을 참고하여 변경하세요.
- 168번째줄 : HostAliases=”localhost 127.0.0.1” 를 HostAliases=mydomain.com localhost 127.0.0.1” 로 변경. 현재 설정파일과 동일하게 취급할 도메인을 띄어쓰기를 구분자로 하여 적어줍니다.
- 188번째줄 : DNSLookup=1 을 DNSLookup=0 으로 변경. dnslookup 은 부하가 많이 걸리므로 꺼두는게 좋습니다.
- 905번째줄 : Lang=”auto” 를 Lang=”ko” 로 변경. 강제로 한국어를 지정합니다. awstats에는 한글UI를 지원합니다.
- 1305번째줄 : LoadPlugin=”hashfiles” 를 LoadPlugin=”geoip GEOIP_STANDARD /usr/share/GeoIP/GeoIP.dat” 로 변경. 방문자를 나라별로 분류해서 볼 수 있습니다.
3. awstats 보안 설정
# awstats.도메인명.conf 를 자동으로 불러옴
$ sudo cp /etc/awstats/awstats.conf /etc/awstats/awstats.windwing.co.kr.conf
# 보안을 위해서 기본샘플파일인 awstats.conf 파일명을 awstats.conf_ 로 변경
$ sudo mv /etc/awstats/awstats.conf /etc/awstats/awstats.conf_
4. 아파치 환경 설정
- 아파치 환경설정 파일을 읽어옵니다.
$ sudo vim /etc/apache2/sites-enabled/000-default
- 환경설정 파일에서 VirtualHost 태그 안에 awstats 설정 추가합니다.
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
## -- awstats 설정 ##
Alias /awstatsclasses "/usr/share/awstats/lib/"
Alias /awstats-icon/ "/usr/share/awstats/icon/"
Alias /awstatscss "/usr/share/doc/awstats/examples/css"
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
...
</VirtualHost>
- 아파치 서버 재시작
$ sudo /etc/init.d/apache2 restart
5. 로그정보 업데이트
- 시스템에서 주기적으로 업데이트 하기위해 crontab 설정합니다. (반드시 sudo를 붙여 관리자 crontab에 등록)
sudo crontab -e
- 다음과같이 crontab에 awstats 업데이트 구문을 등록합니다. (30분 주기)
# awstats
00,30 * * * * /usr/lib/cgi-bin/awstats.pl -config=mydomain.com -update > /dev/null
6. 결과 확인
- 다음의 주소로 접근하시면 아파치 로그를 확인하실 수 있습니다.
http://mydomain.com/cgi-bin/awstats.pl
references
'개발이야기 > Linux' 카테고리의 다른 글
Ubuntu 이클립스 실행오류 해결 (4) | 2012.09.26 |
---|---|
Ubuntu 12.04에서 java 설치 (0) | 2012.09.12 |
ptrace 설명 및 사용법 (0) | 2012.07.19 |