서버셋팅 노트

아래는 몇년전 개인서버를 셋팅하면서 정리해 두었던 내용입니다.
세월이 흐르고 프로그램들이 업데이트되면서 바뀐내용이 있을 수도 있습니다.

-- 아래 --

작업에 관련된 정보를 메모해 놓는다. 일단, OS는 CentOS 5.2, 64비트 버전이다.

MySQL을 설치하자

1. MySQL이 기존에 설치되어있지는 않은지 확인해보자

#rpm -qa | grep mysql
#yum list installed | grep mysql

참고 - yum 사용법 http://blog.naver.com/njybk/70033277741

2. MySQL을 설치하자

#yum install mysql-server

3. MySQL 서버를 시작시키자

#/etc/rc.d/init.d/mysqld start

4. 재부팅시 자동시작되도록 설정하자

#chkconfig --list | grep mysql
#chkconfig mysqld on

chkconfig 참고자료 http://light99.egloos.com/5142536

5. 문자셋을 UTF-8로 변경하자

/etc/my.cnf 파일을 수정
[client], [mysqld], [mysqldump] 항목에 다음 설정을 넣어준다. default-character-set=utf8
바뀐 설정이 적용되도록 mysql 서버를 재시작한다
/etc/rc.d/init.d/mysqld stop
/etc/rc.d/init.d/mysqld start

자세한 내용은 이 자료를 참고한다
http://blog.acidraincity.com/2015/01/mysql_5.html

6. root계정 비밀번호 생성, database와 user 생성

자세한 내용은 이 자료를 참고한다
http://blog.acidraincity.com/2015/01/mysql.html

apache 웹서버 설치

1. apache가 기존에 설치되어있지는 않은지 확인해보자

#rpm -qa | grep httpd
#yum list installed | grep httpd

2. apache를 설치하자

#yum install httpd

3. apache 웹서버를 시작시키고, 정상작동하는지 확인하자

#/etc/rc.d/init.d/httpd start
#netstat -lntp

4. /etc/httpd/conf/httpd.conf 을 편집해 DocumentRoot 항목을 설정한다

#DocumentRoot "/var/www/html"
DocumentRoot "/home/webroot"

php 설치

1. php 관련 패키지가 설치되어있는지 확인해보자

#rpm -qa | grep php
#yum list installed | grep php

2. php를 설치하자

#yum install php

3. php 관련 라이브러리를 설치하자

#yum install php-mysql php-devel php-gd php-mbstring php-pear php-pecl-mailparse

4. 웹서버를 재시작하자

#/etc/rc.d/init.d/httpd stop
#/etc/rc.d/init.d/httpd start

JDK,TOMCAT 설치 및 apache연동

1. OS 종류와 32/64비트 여부를 확인해, 환경에 적합한 JDK를 다운로드받는다

#getconf LONG_BIT
#uname -a

참고 - 32비트와 64비트 운영체제 구별법 http://blog.naver.com/comki/100064630244

2. 다운로드받은 JDK를 설치한다

#chmod +x ./jdk-6u17-linux-x64.bin
#./jdk-6u17-linux-x64.bin
#mv -f ./jdk1.6.0_17/ /app/

3. 적당한 버전의 TOMCAT을 다운받아 설치하자

TOMCAT 다운로드 http://tomcat.apache.org/download-60.cgi

#tar -zxvf apache-tomcat-6.0.20.tar.gz
#mv -f ./apache-tomcat-6.0.20 /app/

4. JAVA와 TOMCAT 관련 환경변수를 user profile 에 등록하자

#vi ~/.bash_profile

JAVA_HOME=/app/jdk1.6.0_17
CATALINA_HOME=/app/apache-tomcat-6.0.20
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$CATALINA_HOME/bin

export JAVA_HOME
export CATALINA_HOME
export PATH

#source ~/.bash_profile

5. TOMCAT 을 실행시키고 접속이 잘 되는지 테스트해본다.

#catalina.sh start

웹브라우저를 하나 띄워서 http 8080포트로 접속해보자. 친숙한 고양이가 나오면 성공

6. 루트 컨텍스트 경로를 아파치와 일치시켜주자

#vi /apache-tomcat-6.0.20/conf/Catalina/localhost/ROOT.xml

<Context path="/" docBase="/home/webroot"/>
<!-- ROOT.xml 을 요렇게 만들어준다 -->

7. mod_jk 를 설치한다.

소스를 받아 컴파일을 하던지, 컴파일된 바이너리를 받던지 좋을대로 하자. 아무튼 so 파일을 아파치 modules 디렉토리에 복사해 넣어주어야 한다
mod_jk 다운로드 http://tomcat.apache.org/download-connectors.cgi

#cp ./mod_jk-1.2.28-httpd-2.2.X.so /etc/httpd/modules/

8. /etc/httpd/conf/httpd.conf 파일의 최하단에 다음 설정을 추가한다

LoadModule jk_module modules/mod_jk-1.2.28-httpd-2.2.X.so
<IfModule mod_jk.c>
JkWorkersFile   conf/workers.properties
JkLogFile       logs/mod_jk.log
JkLogLevel      info
JkMountFile     conf/uriworkermap.properties
</IfModule>

9. /etc/httpd/conf/workers.properties 파일을 다음의 내용으로 생성한다

worker.list=worker1
worker.worker1.port=8009
worker.worker1.host=localhost
worker.worker1.type=ajp13
worker.worker1.lbfactor=1

10. /etc/httpd/conf/uriworkermap.properties 생성해, TOMCAT으로 포워딩할 uri패턴을 정의해주자

/*.jsp=worker1
/*.gn=worker1
/=worker1
/servlet/*=worker1

11. URI가 온전히 전달될 수 있도록 톰캣 Connector에 URIEncoding 설정을 해주자

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8"/>

12. apache 웹서버를 재시작시키고, 연동이 잘 되는지 확인해보자

13. 톰캣이 제공하는 manager UI를 원격에서도 사용하기 위해서는 다음과 같이 설정해야 한다.
http://stackoverflow.com/a/39265608

14. 톰캣 메니저를 통한 웹어플리케이션(war) 리로딩이 실패하는 경우 아래 설정을 추가한다.
http://gis.stackexchange.com/a/136579


Subversion 설치

자세한 내용은 이 자료를 참고한다
http://blog.acidraincity.com/2015/01/svn.html