웹서버 설치 및 구현 방법

Linux 2006. 2. 25. 04:39 posted by CecilDeSK
반응형
웹서버 설치 및 구현 방법

1. 소개 : 웹서버 연동시 Apache, PHP, MySQL 연통설치하는데, 최적화된 서버 운영을 위해 추가로 Zend-Optimizer라 는 프로그램을 설치 할 수 있다.

2. 플렛폼 :OS :REDHAT 9(Linux)

3. 다운로드 사이트 :

MySQL : www.mysql.com
dev.mysql.com/get/Downloads/MySQL 다운로드 하면 된다.
Apache : www.apache.org
http://httpd.apache.org/
PHP : www.php.net
http://www.php.net/downloads.php
Zend-Optimizer : www.zend.com
http://www.zend.com/store/free_download.php
가입하면 자신의 메일로 가입허용이라는 메시지가 올 것이다.
클릭하면 된다.(즉 가입해야 다운 받을 수 있다.)

4. 압축 공통 방식 : tar.gz파일, tar.bz2파일

tar.gz 파일명
예 : tar zxvf mysql-standard-4.0.23-pc-linux-gnu-i686.tar.gz
tar.bz2 파일명
예 : tar jxvf mysql-standard-4.0.23-pc-linux-gnu-i686.tar.bz2

4개의 파일을 모두 압축을 풀어 줘야 한다. 그럼 각각의 디렉토리가 생성 될 것이다.


5. 기존의 인스톨된 apache제거하기 : rpm패키지로 설치되어 있는 아파치 웹서버 프로그램을 삭제 해야 한다. 그렇다고 꼭 해야 하는 것은 아 니지만 공간도 차지하고 서로 충돌이 생길 가능성을 배제하긴 어렵다. 최적화를 위한 작은 성의정도....

- 아파치 데몬을 정지 시킨다.

/etc/rc.d/init.d/httpd stop
설명 : 아파치 1.3버전은 apache라는 이름으로 설치되지만, 2.0버전은
httpd라는 이름으로 설치되므로 두가지 모두 검색해서 나오는 것을 삭제
- rpm으로 아파치 검색 또는 제거

rpm -qi | grep httpd -> 아파치의 정보를 볼때 사용한다.
즉 화면에 정보가 추출되면 설치 되어
있으므로 제거 하면 된다.
rpm -e httpd --nodeps -> 의존성관련된 패키지를 먼저 제거해주고
RPM 패키지를 제거 한다.
- PHP, MySQL도 위와 같은 방식으로 하면 된다.(응용이 될 거라 생각한다.)

6. MySQL 설치 하기

- mysql 소스파일의 압축을 푼 디렉토리로 이동한다.
cd /usr/local/src/cd mysql-standard-4.0.23-pc-linux-gnu-i686
- configure로 환경 설정 한다.
./configure --prefix=/usr/local/mysql --with-charset=euckr

설명 : --prefix는 인스톨한 기본 디렉토리를 지정하는 옵션이다.
--with-charset=ecukr은 한글을 지원한다는 뜻이다.
보통 소스파일에서 환경설정시에 configure를 사용하는데 configure와
관련된 옵션은 ./configure --help 하면 볼 수 있다.
기타 다른 옵션은 불 필요 하므로 사용자에 따라 정의 하면 된다.
- make : 소스이기 때문에 컴파일 과정이 필요하다.
- make install : 컴파일한 것을 실행시켜 설치한다.

7. mysql의 테스트

/usr/local/mysql/bin/mysql_install_db
설명 : 처음 설치시 한번 꼭 실행한다. 이작업은 mysql기본 데이터베이스
인 mysql과 testdb를 설치해준다.

/usr/local/mysql/bin/mysqld_safe --user=root &
설명 : 설치된 디렉토리로 이동하여 데몬을 띄운다.

/usr/local/mysql/bin/mysql
설명 : mysql 실행


8. apache 설치
설치될 디렉토리만 configure 한다.
- 아파치 압축을 푼 디렉토리로 이동한다.
- ./configure --prefix=/usr/local/apache --enable=-mods-shared=most --enable-module=so
설명 : prefix는 아파치가 설치될 디렉토리를 지정 하는 것이고,
--enable=-mods-shared=most --enable-module=so은 DSO 방식으로 PHP 모듈이 사용 될 수 있다.
DSO 동적 모듈로 설정 할 경우 PHP를 업데이트 할때 처음부터 재 설치 하지 않아도 된다.
make
make install

9. 환경 설정 파일 ( httpd.conf ) 설정
- /usr/local/apache/conf/httpd.conf 환경설정파일
설명 : 자신이 설치한 디렉토리 및에 conf폴더가 보일 것이다.
conf폴더 밑에 httpd.conf의 파일을 연다.
- vi httpd.conf
- /ServerName 항목을 찾는다.
설명 : IP 주소나 Domain Name을 적는다.

- php관련 환경 설정 : AddType이라는 항목이 모여있는 곳으로 이동한 뒤
아래와 같이 추가한다.
- AddType application/x-httpd-php .php .htm .html .inc .php5 .php4
- AddType application/x-httpd-php-source .phps
- DirectoryIndex index.html index.php index.htm
설명 : www.mass.com/index.php를 할 필요가 없이 www.mass.com 으로 웹 페이지를 로딩 한다.

10. PHP 설치

- PHP압축을 푼 디렉토리로 이동한다.
- ./configure --prefix=/usr/local/php
설명 : prefix는 PHP가 설치될 디렉토리를 지정한다.
--with-apxs2=/usr/local/apache/bin/apxs
설명 : --with-apxs2는 php가 아파치데몬에 DSO 모듈로 로딩 되도록 하기 위한 것이다.
--with-mysql=/usr/local/mysql/
설명 : mysql과 연동 하기 위한 설정 부분 이다.
--with-config-file-path=/usr/local/apache/conf
설명 : php.ini 경로의 위치를 저정 하는 옵션 이다.
--with-exec-dir=/usr/local/apache/bin
설명 : 아파치 데몬의 실행경로를 지정 한다.
--with-zlib --with-gd --with-ttf --with-png --with-jpeg-dir
설명 : --with-zlib : zlib 는 zip 나 gzip 에 사용되고 있는 압축 알고리즘을 라이브러리화한 것이다.
--with-gd : GD에 있는 함수를 이용해서 이미지를 편집할 수 있는 라이브러리 이다.
--with-ttf ,--with-png, --with-jpeg-dir : 위와 동일하며 각각의 설정 이다.
--with-freetype-dir --with-gmp --with-xml --with-mod-charset
--with-iconv
--with-language=korean --enable-mbstr-enc-trans --enable-mbstring
--enable-track-vars
--enable-trans-sid
설명 : --enable-track-vars는 HTTP_GET_VARS, HTTP_POST_VARS,
--enable-iconv
설명 : iconv라는 함수를 사용 하기 위해 iconv 라이브러리를 설정 한다.

- make
- make install
- cp php.ini-dist /usr/local/lib/php.ini
설명 : PHP의 환경설정파일인 php.ini를 라이브러리 디렉토리에 등록 시킨다.

모든 설치는 완료 된 것이다. 하지만 이렇게 한다고 웹 서버가 구축 된 것은
아니다 왜냐면 환경 설정 부분에서 조금 남아 있기 때문이다.
마무리 작업을 하도록 하겠다.

11. Zend-Optimizer 설치
- Zend-Optimizer 압축을 푼 디렉토리로 이동한다.
- ./install.sh을 실행하여 절차대로 설치한다.

12. 아파치 테스트

- 문서는 /usr/local/apache/htdocs/ 밑에 있다 모두 지우고 다시 만들어도
된다. 그러므로 자신이 원하는 이름으로 만들어 본다.
- index.html 문서에 아래와 같이 만든다.




리눅스에 미치든가 아니면 하지 않는다.



리눅스를 자신의 것으로 만들면 된다.






13. 아파치와 PHP가 제대로 연동되는지 테스트

- test.php에 간단한 PHP문서를 이용하여 phpinfo()라는 PHP정보를 보여주는
함수를 이용해서 작성한 뒤에 웹상에서 불러오도록 한다.
- test.php 문서
php.info();
?>

- 웹상에서 실행 해본다.
예) 192.xxx.xxx.xx/test.php
DNS를 구축 했을 경우 : mass.com/test.php

- 실행 해보면 zend와 각종 관련 정보가 보일 것이다. 그럼 이제 부터 나머지는
각자의 노하우로 하면 된다.


14. 간단한 TIP

- /etc/hosts 네트워크 환경 설정 파일 이용하기
설명 : 많은 사람들은 웹 페이지에서 사이트를 입력 할때 문자로 입력하지
숫자로 입력 하지는 않 숫자로 입력 하지는 않는다. 바로 그 부분을 담당하는 것이라고 생각
하면 된다. 자신의 localhost가 192.33.23.xx이라면 아래와 같이 하면된다.

- vi /etc/hosts
- 192.33.23.xx www.mass.com mass
설명 : 이렇게 하면 telnet 192.123.23.xx 하지 않고
telnet mass 하면 해당 주소로 바인딩 된다.
- /etc/hosts 설명 : DNS 서버를 사용하기 이전에 사용하던 파일로 IP주소와
호스트이름을 매핑시켜 데이터베이스화해서 사용하는 파일이다.


저자 : MASS
반응형