개발자/Server

CentOS 6.5로 서버 구축하기 - 6.아파치 톰캣 연동 및 소스 경로 설정

SaintPark 2015. 8. 10. 16:40

먼저 tomcat-connector를 설치해야한다. 설치를 위해서는 apxs모듈이 필요하다.

apxs란 아파치 하이퍼텍스트 전송 프로토콜 (HTTP) 서버의 확장모듈을 컴파일하고 설치하는 도구이다.


먼저 apxs 설치여부 확인

# find / -name apxs


검색결과 없으면 설치해줌.

# yum install httpd-devel


이제 커넥터 설치파일을 구한다음... 압축을 풀고 설치해준다.

# tar -zxvf /usr/java/tomcat-connectors-1.2.40-src.tar.gz

# /usr/java/tomcat-connectors-1.2.40-src/

# ./configure --with-apxs=/usr/sbin/apxs

# make && make install


중간에 C compiler cannot create executables 오류가 생기면 C컴파일러가 없어서이다.

yum install gcc 명령어로 설치해주자.


[root@test run]# vi /etc/httpd/conf/workers.properties

위 파일을 생성해서 알맞게 수정해준다. 예를들자면


#BEGIN workers.properties


worker.list=test


worker.test.port=8080

# change this line to match apache ServerName and Host name in server.xml

worker.test.host=www.test.co.kr

worker.test.type=ajp13


[root@test run]# vi /etc/httpd/conf/httpd.conf

그다음 위 아파치 설정파일에 들어가서 LoadModule 모여있는 곳 아래에 다음의 내용을 추가.

(/usr/lib64/httpd/modules에 mod_jk.so파일이 존재해야 한다.)


LoadModule jk_module modules/mod_jk.so


<IfModule mod_jk.c>

JkWorkersFile conf/workers.properties

#JkLogFile mod_jk.log

#JkLogLevel error

#JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "

#JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

#JkRequestLogFormat "%w %V %T"

</IfModule>


<IfModule dir_module>

    DirectoryIndex index.html index.php index.jsp

</IfModule>


최하단 부분에도 다음의 내용을 알맞게 수정하여 넣어준다. (해당 디렉토리에 맞게 내용 확인)

NameVirtualHost *:4040

############### test #################
<VirtualHost *:4040>
    ServerName www.testco.kr
    DocumentRoot /test
    ErrorLog logs/dev-error.log
    CustomLog logs/dev.log common
<Directory "/test">
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Allow from all
</Directory>
    JkMount /*.jsp  test
    JkMount /*.action  test
    JkMount /servlet/*  test
</VirtualHost>

오류발생시 로그는 /usr/java/apache-tomcat-7.0.14/logs/catalina.out에서 확인한다
만일 java.lang.OutOfMemoryError: PermGen space 오류가 발생하면서 안될경우
/usr/java/apache-tomcat-7.0.14/bin/catalina.sh 파일 상단에
JAVA_OPTS="-Djava.awt.headless=true -server -Xms512m -Xmx1024m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+DisableExplicitGC"
를 추가해준다. 메모리 누수로 인해 생기는 에러라고 함...

메인화면은 뜨는데 로그인이 안될경우 PASSWORD의 암호화 방식이 다르게 설정됐을 가능성이 있다.
/etc/my.cnt에 old_passwords=1을 추가해주면 해결된다.

♣ 기타
hostname 변경방법
1. $ /proc/sys/kernel/hostname 변경
(vi로 변경되지 않아 $ echo "new hostname" > /proc/sys/kernel/hostname  로 변경)
2. $ vi /etc/hosts 변경
3. $ vi /etc/sysconfig/network 변경

시간동기화: sudo rdate -s time.bora.net

♣참고
톰캣 설치경로: /usr/share/tomcat6/
아파치 실행경로: /etc/rc.d/init.d/httpd