2014. 11. 10. 20:54

0. 사전 준비

0.1 PCRE 최신 라이브러리 다운로드
pcre.org -> anonymous FTP를 이용해 최신 버전을 다운로드 받을 수 있는 사이트에 접속하여 최신 버전 다운로드

0.2 컴파일하고 설치하기
$ tar xvfz pcre-8.36
$ cd pcre-8.36
$ ./configure
$ make
$ sudo make install

0.3 pcre 라이브러리를 /usr/local/lib에 설치된다. 로드가 되지 않을 경우, 다음의 명령어를 입력한다.
$ sudo ldconfig


1. apache사이트에서 관련 파일 다운로드 받기

1.1 httpd 다운로드 하기
www.apache.org -> download -> mirror 사이트로 이동 -> httpd 선택 -> 최신 버전을 다운로드 (httd-2.4.10.tar.gz)를 다운로드

1.2 apr과 apr-util 다운로드 하기
www.apache.org -> download -> mirror 사이트로 이동 -> apr 선택택


2. 압축해제
$ tar xvfz httd-2.4.10.tar.gz
$ tar xvfz apr-1.5.1
$ tar xvfz apr-util-1.5.4

3. 이동
mv apr-1.5.1 httpd-2.4.10/srclib/apr
mv apr-util-1.5.4 httpd-2.4.10/srclib/apr-util


4. apache 컴파일 하고 설치하기 
$ cd httpd-2.4.10
$ ./configure --prefix=/usr/local/apache2
$ make
$ sudo make install


5. apache 시작 및 종료 
$ sudo /usr/local/apache2/bin/apachectl start

$ sudo /usr/local/apache2/bin/apachectl /etc/init.d/apache2
$ sudo invoke-rc.d apache2 start   $ sudo /etc/init.d/apache2 start  : 시작
$ sudo invoke-rc.d apache2 stop   $ sudo /etc/init.d/apache2 stop   : 종료

6. apache 정상동작 확인하기
$ sudo netstat -anp | grep httpd

7.  부팅 시 자동실행
$ sudo vi /etc/init.d/apache2

#!/bin/sh
### BEGIN INIT INFO
# Provides:          apache2
# Required-Start:    $local_fs $remote_fs $network $syslog $named
# Required-Stop:     $local_fs $remote_fs $network $syslog $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# X-Interactive:     true
# Short-Description: Apache2 web server
# Description:       Start the web server and associated helpers
### END INIT INFO
if [ `id -u` -ne 0 ]; then
    echo "You need root privileges to run this script"
    exit 1
fi
# Make sure tomcat is started with system locale
if [ -f /etc/default/locale ]; then
    . /etc/default/locale
    export LANG
fi
if [ -f /etc/default/rcS ]; then
    . /etc/default/rcS
fi
/lib/lsb/init-functions

$ sudo update-rc.d apache2 defaults 

자동실행을 중단하기위해서는
$ sudo update-rc.d apache2 remove
 

OSX의 Terminal에서 ssh로 로그인을 해서 작업중이라면 Perl locale error가 발생할 수 있다. [해결방법]
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = "en_US:en",
LC_ALL = (unset),
LC_CTYPE = "UTF-8",
LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8”).

참고) Apache + Tomcat + MySQL 설치 (우분투)

Posted by 모바일헌터
2014. 10. 24. 23:20
- mod_jk와 mod_proxy이용하기

mod_jk의 경우 별도의 모듈을 설치해야 해서 설정이 어려운 반면 mod_proxy는 별도의 모듈 설치가 필요 없어 설정이 간편한 편이다. 하지만 mod_jk는 JkMount옵션을 이용하여 URL이나 컨텐츠 별로 유연한 설정이 가능하지만 mod_proxy는 컨텐츠 별로 유연한 설정이 어렵다. 요구에 맞게 알맞은 이용을 하기를 권장한다.

Apache와 Tomcat이 다음의 위치에 설치하였다고 가정하고 작업을 진행한다.

Apache: $APACHE_HOME=/usr/local/apache2

Tomcat: $CATALINA_HOME=/opt/tomcat8




mod_jk 이용하기


mod_jk는 Apache Tomcat의 Tomcat Connectors Download 사이트에서 다운로드 받을 수 있다.

 tar xvfz tomcat-connectors-1.2.40-src.tar.gz

 $ cd tomcat-connectors-1.2.40-src/native

 $ ./configure --with-apxs=/usr/local/apache2/bin/apxs

 $ make

 $ sudo make install


혹은

 $ sudo apt-get install libapache2-mod-jk


1. mod_jk 설정하기 
- "mod_jk.conf" 파일을 생성

 $ sudo vi /usr/local/apache2/conf/mod_jk.conf


##### mod_jk.conf #####

LoadModule jk_module modules/mod_jk.so
<IfModule jk_module>
    JkWorkersFile    conf/workers.properites
    JkLogFile           logs/mod_jk.log
    JkLogLevel         info
    JkMount              /* ajp13_worker

</IfModule>
 # apt-get으로 설치 시 /etc/libapache2-mod-jk/httpd-jk.conf 파일을 참조

- worker의 속성을 정의

 $ sudo vi /usr/local/apache2/conf/workers.properties


##### workers.properties #####
workers.tomcat_home=/opt/tomcat8
workers.java_home=/usr/lib/jvm/jdk1.8.0
ps=/
# worker list
worker.list= ajp13_worker
# ajp13_worker definition
worker.ajp13_worker.port=8009
worker.ajp13_worker.host=localhost
worker.ajp13_worker.type=ajp13
worker.ajp13_worker.lbfactor=1
# default load balancer worker definition
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=ajp13_worer

# apt-get으로 설치 시 /etc/libapache2-mod-jk/workers.properties 파일을 참조

2. 아파치 설정
mod_jk.conf 파일을 httpd.conf에 추가

 $ sudo vi /usr/local/apache2/conf/httpd.conf


IncludeOptional conf/mod_jk.conf

# apt-get으로 설치 시 /etc/apache2/apache2.conf를 참조

3. tomcat 설정
- ajp 통신하는 부분의 주석을 제거

 $ sudo vi /opt/tomcat8/conf/server.xml


<!-- Define an AJP 1.3 Connector on port 8009 -->
<!--
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
-->
# apt-get으로 설치 시 /var/lib/tomcat7/conf/server.xml를 참조


4. 테스트
자! 이제 http://localhost와 http://localhost:8080을 확인해보자.
동일하게 보인다. 연동 설정이 제대로 완료가 된 것이다.

- http://localhost/tomcat-demo를 확인해보자!
1. mod_jk.conf를 수정

 $ sudo vi /usr/local/apache2/conf/mod_jk.conf


##### mod_jk.conf #####

LoadModule jk_module modules/mod_jk.so
<IfModule jk_module>
    JkWorkersFile    conf/workers.properites
    JkLogFile           logs/mod_jk.log
    JkLogLevel         info
    JkMount              /
tomcat-demo* ajp13_worker

</IfModule>
"JKMount /ajp13_worker" 라고 표기하면 http://ip/tomcat-demo 로 시작하는 주소는 모두 커넥터 설정에서 지정한 ajp13_worker로 연결을 해준다.

2. tomcat-demo생성
$ sudo mkdir -p /opt/tomcat8/webapps/tomcat-demo
$ vi /var/lib/tomcat7/webapps/tomcat-demo/index.jsp

<HTML>
  <BODY>
     Hello!  The time is now <%= new java.util.Date() %>
  </BODY>
</HTML>

5. 아파치, 톰캣 재시작
$ sudo /etc/init.d/apache2 restart
$ sudo /etc/iinit.d/tomcat8 restart

6. 확인
http://localhost:8080/tomcat-domo와 http://localhost/tomcat-domo 를 브라우져에서 테스트해보자




mod_jk 이용하기

 $ sudo vi /usr/local/apache2/conf/httpd.conf


1.  httpd.conf에서 mod_proxy.so와 mod_proxy_http.so를 로드
다음을 찾아 주석(#)을 제거한다.

LoadModule proxy_module modules/mod_proxy.so

...
LoadModule proxy_http_module modules/mod_proxy_http.so


2. VirtualHost를 설정해보자!

다음을 찾아 주석(#)을 제거한다.

Include conf/extra/httpd-vhosts.conf


 $ sudo vi /usr/local/apache2/conf/extra/httpd-vhosts.conf

다음을 추가해주자.

...

<VirtualHost *:80>

    ServerName tomcat-demo.com
    ProxyRequests off
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>
    ProxyPass / http://localhost:8080/tomcat-demo/
    ProxyPassReverse / http://localhost:8080/tomcat-demo/
    <Location />
        Order allow,deny
        Allow from all
    </Location>
</VirtualHost>


2. 확인

 $ sudo vi /etc/hosts

다음을 추가하고

127.0.0.1  tomcat-demo.com

http://tomcat-demo.com:8080/tomcat-domo와 http://tomcat-demo.com/tomcat-domo 를 브라우져에서 테스트해보자



Posted by 모바일헌터
2014. 10. 24. 16:34
아파치 설치

 $ sudo apt-get install apache2

>> 브라우저에서 "http://localhost"를 확인해보세요

- 소스를 빌드하여 설치하기: Ubuntu Server에 Apache httpd 설치하기


Tomcat 설치

 $ sudo apt-get install tomcat7


◎ 선택적으로 tomcat7-docs, tomcat7-examples, tomcat7-admin도 설치해주세요.

 $ sudo apt-get install tomcat7 tomcat7-docs tomcat7-examples tomcat7-admin


 다음의 파일에서 JDK의 폴더를 찾지 못하는 경우가 있습니다. 
$ vi /etc/init.d/tomcat7
JDK_DIRS=“/usr/lib/jvm/jdk1.8.0"

Open JDK보다 Oracle JDK를 사용하기 원하신다면 다음 링크를 참조하세요.

>> 브라우저에서 "http://localhost:8080"를 확인해보세요
default Tomcat home page: /var/lib/tomcat7/webapps/ROO/index.html
CATALINA_HOME: /usr/share/tomcat7
CATALINA_BASE: /var/lib/tomcat7

위와 같이 자동으로 설치 되었을 경우, 약간의 설정에 문제가 있으므로 다음의 글을 참조하여 설치하기를 권장한다. Ubuntu Server에 tomcat 설치

MySQL 설치

 $ sudo apt-get install mysql-server


동작확인하기

 $ sudo netstat -tap | grep mysql




'개발 거들기' 카테고리의 다른 글

소스를 블로그에 올릴 때  (0) 2016.05.12
ATOM에서 TODO관리하기  (0) 2015.12.21
git 로컬 저장소 생성(.git 폴더)  (0) 2015.01.14
git 수정사항 확인  (0) 2015.01.14
형상관리 툴 - (1) git  (0) 2014.09.20
Posted by 모바일헌터