웹마스터 팁

이번에 웹서버 셋팅을 새로이 했다.
순전히 redhat 9.0 과 Apache 2.0을 적용해 보고 싶은 생각에서였다.
화근의 시작이었다 -_-

redhat9.0과 아파치2.0.48 + PHP 4..3.4 + MySQL 4.0.16 설치..
잘 되었다. 몇번의 시행착오는 격었지만(반드시 그래야만 하는 일처럼 -_-).
문제는 다 설치한 후 기존의 홈페이지 자료를 복구한 다음에 일어났다.
기존의 자료들은 다 이상없이 보였는데 문제는 새로운 글을 작성할때 였다.
일부글자(규칙성은 없다)가 깨져서 이상하고 희안한 문자로 대체되는것이었다.
쓰는 화면까지는 괜찮으나 완료를 하고 그 글을 읽을 때 깨지는 것이었다.
Apache 2.X 버전에서의 한글처리 문제로 나름대로의 결론을 내렸다

Apache2.X + PHP 참고 : http://www.php.net/manual/en/install.apache2.php

할수 없이 다시 redhat 7.2 + Apache 1.3.29(최신) + PHP4.3.4 + MySQL 4.0.16 으로 셋팅결정!!

Apache1.3.X + PHP 참고 : http://www.php.net/manual/en/install.apache.php

다음은 이번 작업의 대략적인 순서를 적었다.
자세한 설치사항은 http://www.nemosarang.net/zboard/view.php?id=webstudy&page=2&sn1=&divpage=1&category=4&sn=off&ss=on&sc=on&select_arrange=headnum&desc=asc&no=22 를 참고하라.

1. 서버포맷 및 파티션 재설정( 80G + 8G 하드 )
/ 512M
/boot 30M
/home 30G
/usr 8G
/var 30G
SWAP 250M
/backup 나머지
리눅스 설치

2. MySQL 4.0.16 설치(configure -> make -> make install 순서)
[root@www /usr/local/src/mysql-4.0.16]./configure --prefix=/usr/local/mysql
--localstatedir=/var/lib/mysql   -> MySQL데이터들이 쌓이는곳
--with-charset=euc_kr

make -> make install
후 몇가지 작업들 수행(위의 링크에 자세하게 설명되어 있음)

3. Apache 1.3.29 설치(configure -> make -> make install 순서)
[root@www /usr/local/src/apache-1.3.29]./configure --prefix=/usr/local/apache
--enable-module=so   -> php를 DSO방식으로 설치하기 위한 옵션
--sysconfdir=/etc/httpd/conf -> httpd.conf파일 위치 지정
--htdocsdir=/var/www/html -> html파일이 있을곳 지정

make -> make install
후 /etc/rc.d/rc.local 파일에 다음줄 추가
/usr/local/apache/bin/apachectl start
이러면 자동으로 아파치가 실행된다.

지난번과 달라진 부분이다. 지난번에는 apache에서 한번 configure 작업만 하고 PHP를 설치하고 다시 apache로 와서 설치를 마무리 하는 과정을 밟았다. 이것은 static으로 설치하는 방식이고 이번에는 dynamic방식으로 설치하는것이므로 아파치를 완전히 설치한 다음 PHP를 설치한다.
해당하는 옵션이 바로 --enable-module=so 라는 옵션이다.
이것이 Apache 2.X일때는 --enable-so라는 옵션으로 주면 된다.


4. PHP 4.3.4 설치(configure -> make -> make install 순서)
[root@www /usr/local/src/php-4.3.4]./configure --prefix=/usr/local/php
--with-apxs=/usr/local/apache/bin/apxs Apache와의 연동을 위해
--with-mysql=/usr/local/mysql mysql의 위치 지정
--with-zlib
--enable-track-vars
--with-mod-charset
--with-language=korean
--with-charset=euc_kr
--disable-debug
--with-config-file-path=/etc php.ini파일의 위치 지정

make -> make install
php.ini파일을 만들기 위해 다음과 같은 작업을 한다.
cp /usr/local/src/php-4.3.4/php.ini-dist /etc/php.ini

5. php.ini파일과 httpd.conf파일 수정
먼저 httpd.conf파일을 vi로 연다. (위의 옵션대로 했다면 /etc/httpd/conf/ 밑에 있을거다. 만약 설치할 때 sysconfdir을 지정해 주지 않았다면 /usr/local/apahce/conf/ 밑에 존재한다.)

LoadModule php4_module modules/libphp4.so 부분을 찾아 아래에 다음을 추가하자.


AddType application/x-httpd-php .php .html .php3 .php4 .inc .htm .phtml .ph
AddType application/x-tttpd-source .phps


아 물론 httpd.conf파일 안에서 몇가지 수정해야 할 부분이 있는데 이것은 위의 링크된 문서를 읽어보라.

php.ini파일을 수정하기 위한 내용도 위의 링크를 읽어보면 자세하게 나온다.


6. 기존의 데이터 복구
재 설치 작업 이전에 html파일과 MySQL내의 모든 자료를 백업받아두었다고 가정하고 하는 얘기이다.
(제로보드의 관리자 모드에서의 백업이 아니라 mysqldump로 백업 받아야 아래의 내용이 맞아들어간다)

mysql로 접속한 다음 mysql 데이터베이스 내의 모든테이블들을 삭제한다.
다음 mysql을 빠져나온다음 프롬프트 상태에서 다음과 같이 명령을 내린다.
[root @www....] mysql mysql < mysql_db_bak_20031215.sql
(물론 백업받은 파일 이름은 각자 상황에 따라 다를 것이다)
처음에 mysql을 설치하면 아무 비밀번호도, 사용자도 지정되어 있지 않지만
위의 작업을 마치면 기존의 사용자들과 root의 비밀번호가 예전처럼 지정되게 된다.
다음으로 이 변경된 사용자와 비밀번호 등이 제대로 동작하기 위해 mysql을 restart하라.

/etc/rc.d/init.d/mysqld restart

다음으로 사용자별로 백업받은 mysql자료들을 복구한다.

mysql -uroot -pXXXXX yanemone < yanemone_db_bak_20031215.sql
mysql -uroot -pXXXXX sijiclub < sijiclub_db_bak_20031215.sql

이렇게 DB복구가 끝났으면 html파일을 복구한다.
이것은 기존에 tar로 묶어 두었던 파일을 그대로 풀어주면 된다.
/var/www/html 밑에
/home/사용자ID/public_html 밑에

이상으로 이번 작업에 대한 Documentation을 마칠까 한다.

제목 글쓴이 날짜
Windows XP 에서 Apache 2 + PHP 5 + SQLite 설치하기 [8] 엔젤퀸 2004.02.23
[XAMPP]한 컴퓨터에서 여러 개의 홈페이지 운영하는 방법(가상호스트 아님) [8] The Darkness 2004.02.05
procmail로 마이둠 웜(MyDoom Worm) 필터링 좋은진호 2004.02.04
[초보강좌] 윈도우 서버의 용량 제한~~!! [17] file HoYa™ 2004.01.08
리눅스 서버 설치 및 관리에 따른 초보경험담을 게시판에 담아... [1] eversun 2004.01.05
redhat 9.0에서의 qmail 설치 문서 비츠로 2004.01.04
apache 1.3.x-2.0.48 의 원격 유저 검색 취약점을 이용한 exploit [2] DearMai 2003.12.27
랜카드 상태 확인 및 연결 속도 변경 mii-tool 좋은진호 2003.12.19
Apache 2.X 버전의 한글문제와 새로운 방식의 APM 셋팅 [8] 최종우 2003.12.17
VirtualHost 안될때 [1] 이성헌 2003.12.16
유저 자동 셋팅 스크립트 Ver 2.0 [3] 김병철 2003.12.15
MySQL 퍼포먼스를 top명령어처럼 모니터링 mytop 좋은진호 2003.12.14
윈도우 2003에서의 APM+phpMyAdmin+MMCache설치법.. [1] 김수용 2003.12.13
iis에서 로그인창 뜨는 문제 해결방법 제시 [3] 함재식 2003.12.12
APM서버설치-XAMPP v1.2 [14] The Darkness 2003.12.05
리눅스 커널(kernel)에 심각한 보안 결함 발견 [1] 아치 2003.12.04
[C급]FrontPage Server Extensions 취약점으로 인한 임의코드 실행문제 ATpple.com 2003.11.12
[C급]Buffer Overrun in the Workstation 취약성 통한 코드 실행 ATpple.com 2003.11.12
[C급]Internet Explorer 다중 취약점 ATpple.com 2003.11.12
윈도우에 세팅한 서버에 설치된 phpmyadmin 에 인증걸기 [3] 피카추삼겹살 2003.11.05