BLOG main image
Their Finest Hour! Since1999..

카테고리

분류 전체보기 (934)
My Page (47)
Linux/Unix (604)
::FAQ (279)
::Fundamentals (285)
::Shell Script (2)
::Apache (22)
::Tomcat (0)
::Sendmail (9)
::Qmail (0)
::DNS -Bind (4)
::AnNyung Linux (3)
Windows (219)
Database (61)
Programming (1)
Network (0)
ScreenShot (1)
Tip (1)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백


다운로드 소스
httpd-2.0.52.tar.gz (apache.org)
php-5.0.2.tar.tar (php.net)
libxml2-cvs-snapshot.tar.gz (xmlsoft.org)


#### libxml 설치하기 ####
1.)tar xvzf libxml2-cvs-snapshot.tar.gz
2.)./configure
3.)make
4.)make install

#### 아파치 설치하기 ####
1.) tar xvzf httpd-2.0.52.tar.gz
2.) ./configure --prefix=/usr/local/apache_2.0.52 --enable-rule=SHARED_CORE --enable-modules=so --enable-so
3.) make
4.) make install

#### php 설치 ####
1.) tar xvzf php-5.0.2.tar.tar
2.) ./configure --prefix=/usr/local/php_5.0.2 --with-apxs2=/usr/local/apache_2.0.52/bin/apxs --with-config-file-path=/usr/local/apache_2.0.52/conf --with-mysql=/usr/local/mysql
3.) make
4.) make install

httpd.conf , mysql 설치는 생략했습니다.
그리고 /usr/local/apache_2.0.52/bin/apachecl start 하시면
httpd.conf 파일이 없다고 안되실수도 있는데..이럴땐
ln -s /usr/local/apache_2.0.52/conf/httpd.conf /etc/httpd/conf/httpd.conf
해서 링크시키면 됩니다.
Posted by 채종윤
아파치의 pid를 찾을 수 없어 종료가 되지 않는
경우에는 아래 몇가지 방법으로 종료하는 법과
pid경로를 체크 하셔야 합니다.

1. netstat -ap 명령어로 80포트를 사용하고 있는
프로그램을 kill 시킵니다.

2. 아파치가 실행 중에 pid 파일, 보통 /var/run/httpd.pid에 놓습니다.
이 파일이 지워졌거나. 아니면 apachectl이나 apache init script에서
pid 파일 경로가 잘못 지정된 경우일 수도 있습니다.
여러번 다시 실행시켜서 pid 파일의 정확한 경로를 지정해주면 됩니다.

3. 드문 경우지만 예전 inetd를 사용하는 경우 inetd에 apache가
물려서 올라오는 경우 위와 같이 종료가 되지 않는 경우도 있습니다.
Posted by 채종윤
1.vi편집기로 아래와 같은 스크립트를 만듭니다.

[root@op root]# vi rotate.sh
#!/bin/bash
DATE=`/bin/date +%y%m%d`
/bin/cp /usr/local/apache/logs/access_log /usr/local/apache/logs/access_log.$DATE
cat /dev/null > /usr/local/apache/logs/access_log
/bin/gzip /usr/local/apache/logs/access_log.$DATE
/bin/cp /usr/local/apache/logs/error_log /usr/local/apache/logs/error_log.$DATE
cat /dev/null > /usr/local/apache/logs/error_log
/bin/gzip /usr/local/apache/logs/error_log.$DATE
위의 아파치 로그 경로는 실제 아파치 로그가 있는 경로로 설정해주면 됩니다.
예를 들어 /var/log/httpd/에 로그파일을 옮겼다면 모든 경로를
/var/log/httpd로 바꿔놓으면 됩니다.

2.다음과 같이 실행 가능한 파일로 변경 합니다.
[root@op root]# chmod 755 rotate.sh

3.위의 스크립트를 clontab에 넣어서 매일 실행하게 합니다.
[root@op root]# crontab -e
0 3 * * * /root/rotate.sh
스크립트가 있는 경로를 등록해주시면 되고 매일 3시에 돌게 되어있습니다.

4.스크립트가 실행되어 로그가 일자별로 압축되어 저장된 결과입니다.
[root@op root]# cd /usr/local/apache/logs/
[root@op logs]# ls
access_log access_log.031031.gz error_log error_log.031031.gz httpd.pid
로그체크를 할때 필요한 날짜의 로그만 압축을 풀어서 확인하시면 되겠죠?

위의 스크립트를 응용하면 아파치 로그뿐만 아니라 /var/log 아래
있는 여러 로그들을 일별로 효율적으로 관리할 수 있습니다.
Posted by 채종윤

Total : Today : Yesterday :
채종윤's Blog is powered by Daum & Tattertools.com / Designed by tistory.com