<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
<title>웍스디자인 &amp;gt; 고객센터 &amp;gt; myIDC메뉴얼</title>
<link>https://www.worksdesign.co.kr/bbs/board.php?bo_table=manual</link>
<description>웍스디자인 &amp;gt; 고객센터 &amp;gt; myIDC메뉴얼</description>
<language>ko</language>
	<item>
	<title>APM 및 Tomcat설치</title>
	<link>https://www.worksdesign.co.kr/bbs/board.php?bo_table=manual&amp;wr_id=1</link>
	<description><![CDATA[<p> </p><h3 class="content_title01">APM 및 Tomcat설치</h3><p>                </p><div class="content_title02">1. Apache 컴파일 방법과 기본 디렉토리 구성</div><div class="content_txt02">아파치를 OS셋팅 할 때 RPM으로 설치하게 되면 /etc/httpd/로 디렉토리가 설정이 되기 때문에 관리하기가 불편하다. 그래서<br />OS설치 시 package를 선택하지 않고 소스로  최신 버전을 다운받아  /usr/local/apache2로 위치로 컴파일 해준다. 모든 작업은<br />root계정으로 진행하며 작업 디렉토리는 mkdir /home/src 만들어서 해당 디렉토리의 소스들을 다운받아 놓고 작업을 진행을 한다.<br />아파치를 http://www.apache.org에서 최신 버전을 다운받는다.</div><div class="height20"></div><div class="content_title02">(1)Apache 2.2.X 버전 설치</div><div class="ssl03_codebox"><table width="100%" border="0" cellspacing="0" cellpadding="0"><tbody><tr><td height="25">1.openssl 설치 </td></tr><tr><td height="25">[root@localhost  src]# wget <a href="http://www.openssl.org/source/openssl-0.9.8k.tar.gz" rel="nofollow"><u><font color="#0066cc">http://www.openssl.org/source/openssl-0.9.8k.tar.gz</font></u></a> </td></tr><tr><td height="25">[root@localhost src]# tar -zxvf  openssl-0.9.8e.tar.gz</td></tr><tr><td height="25">[root@localhost  src]# cd openssl-0.9.8e</td></tr><tr><td height="25">[root@localhost  openssl-0.9.8e]# ./config --prefix=/usr/local/openssl</td></tr><tr><td height="25">[root@localhost  openssl-0.9.8e]#make</td></tr><tr><td height="25">[root@localhost  openssl-0.9.8e]#make install</td></tr></tbody></table></div><div class="height20"></div><div class="content_title02">(2)apache 2.2.23 설치</div><div class="content_txt02">아파치를 <a href="http://www.apache.org/" rel="nofollow"><u><font color="#0066cc">http://www.apache.org</font></u></a>에서 최신 버전을 다운받는다. 현재 셋팅  httpd-2.2.23.tar.gz이다.<br />다운 받은  httpd-2.2.23.tar.gz를 압축을 풀고 설치 한다.<br /><strong>아파치2 컴파일 전에는  항상 worker.c, prefork.c 파일을 수정하여 접근할 수 있는 사용자의 수를 증가 시켜줘야  한다. 차후에 문제가 되어 재컴파일을 해야 할 수도 있으니 항상 확인 해야 한다</strong>.</div><div class="ssl03_codebox"><table width="100%" border="0" cellspacing="0" cellpadding="0"><tbody><tr><td height="25">[root@localhost  src]# wget <a href="http://apache.tt.co.kr/httpd/httpd-2.2.23.tar.gz" rel="nofollow"><u><font color="#0066cc">http://apache.tt.co.kr/httpd/httpd-2.2.23.tar.gz</font></u></a> </td></tr><tr><td height="25">[root@localhost  src]# tar -zxvf httpd-2.2.23.tar.gz </td></tr><tr><td height="25">[root@localhost  src]#</td></tr><tr><td height="25">vi  /home/gihcuser/src/httpd-2.2.23/server/mpm/worker/worker.c </td></tr><tr><td height="25"><p>#ifndef DEFAULT_SERVER_LIMIT</p></td></tr><tr><td height="25"><p>#define DEFAULT_SERVER_LIMIT 16   #(16 -&gt; 20으로 수정한다)</p></td></tr><tr><td height="25"><p>[root@localhost src]# </p></td></tr><tr><td height="25"><p>vi /home/gihcuser/src/httpd-2.2.23/server/mpm/prefork/prefork.c</p></td></tr><tr><td height="25"><p>#endif</p></td></tr><tr><td height="25"><p>#ifndef DEFAULT_SERVER_LIMIT</p></td></tr><tr><td height="25"><p>#define DEFAULT_SERVER_LIMIT 256   #(256 -&gt; 1280으로 수정한다)</p></td></tr><tr><td height="25"><p>#endif</p></td></tr></tbody></table></div><div class="content_txt02"><strong>위와 같이 수정하고 하고 다시 httpd-2.2.23 디렉토리로 이동하여 컴파일을 진행한다.</strong><br /></div><div class="ssl03_codebox">[root@localhost src]# cd /home/gihcuser/src/httpd-2.2.23<br /> [root@localhost src]# ./configure --prefix=/usr/local/apache2 --enable-modules=ssl --enable-modules=so --enable-modules=mos --enable-so --enable-mods-shared=most --enable-ssl --with-ssl=/usr/local/openssl --enable-static-rotatelogs<br /> [root@localhost src]# make<br /> [root@localhost src]# make install </div><div class="content_txt02">apache 기본 Document root, script 디렉터리와 log 설정을 바꾸기 위해 아래와 같이 진행 해서 사용할 디렉토리를 만들어 놓는다. 기본으로 설정되는 /usr/local/apache2/htdocs에서의 많은 자료나 로그 그 외 서비스 설치등으로  /usr 이 full 나는 경우를 방지하기 위해 apache Document root는 파티션이 충분한 /home으로 변경하고, apache로그도 로그가 쌓이는 /var/log/apachelog로 지정해야 한다. </div><div class="ssl03_codebox">[root@localhost /src]#mkdir /home/httpd<br /> [root@localhost /src]#mkdir /home/httpd/html<br /> [root@localhost /src]#mkdir /home/httpd/cgi-bin<br /> [root@localhost /src]#ln -s /home/httpd/html  /home/ftp아이디/public_html<br /> [root@localhost /src]#chown -R ftp아이디:ftp아이디 /home/ftp아이디/<br /> [root@localhost /src]#chmod 711 /home/ftp아이디<br />[root@localhost /src]#mkdir /var/log/apachelog </div><div class="content_txt02"><strong>디렉터리를 만들어 준 것과 같이 document root와 그 외 설정을 변경하기 위해 httpd.conf를 아래와 같이 수정한다. </strong><p></p></div><div class="ssl03_codebox"><p>[root@localhost httpd-2.2.11]# vi /usr/local/apache2/conf/httpd.conf<br /> # If your host doesn't have a registered DNS name, enter its IP address here.<br /> #<br /> #ServerName www.example.com:80    #(주석처리를 빼고 업체 도메인으로 수정한다)<br /> # symbolic links and aliases may be used to point to other locations.<br /> #<br /> DocumentRoot "/usr/local/apache2/htdocs"  #( 경로를 /home/httpd/html로 수정한다)<br /> # for more information.<br /> #<br /> Options Indexes FollowSymLinks          #(Indexes 삭제한다)<br /> # </p><p><strong><font color="#000000">아파치로그 부분이 많이 쌓이기 때문에 rotatelogs 를 걸어서 200M씩 로그를 분산한다</font></strong></p><p>CustomLog "|/usr/local/apache2/bin/rotatelogs /var/log/apachelog/도메인-access_log.%Y%m%d 200M" common env=!IMAGE<br /><font color="#000000"><strong>#(수정 전-&gt;logs/access_log , 파이프 기호 주의 )</strong><br /></font> # ErrorLog "/var/log/apachelog/ 도메인-error_log "  <strong><font color="#000000">#( 수정 전 -&gt; logs/error_log )</font></strong> #<br /> ScriptAlias /cgi-bin/ "/home/httpd/cgi-bin/" <font color="#000000"><strong>#(수정전 -&gt; "/usr/local/apache2/cgi-bin” )</strong><br /></font> (수정 전 -&gt; "/usr/local/apache2/cgi-bin” ) </p><p><strong><font color="#000000">시스템이 부팅할 때 apache가 실행 되게하고, daemon을 따로 관리할 수 있도록 /etc/rc.d/rc3.d/S99apache를 symbolic link 로 연결해준다.</font></strong></p><p>[root@ /rc3.d]#ln -s /usr/local/apache2/bin/apachectl /etc/rc.d/rc3.d/S99apache</p></div><div class="height35"></div><div class="point_line"></div><div class="height35"></div><div class="content_title02">2. MySQL 설치</div><div class="content_title02">(1)Mysql-5.1.X 설치 방법</div><div class="ssl03_codebox"><p>Mysql 5.1.37으로 인스톨한다. 테스트를 거친 최신 버전으로 설치하도록 한다.}<br />www.mysql.com 에서 받는다.<br />디렉토리 지정과 한글을 지정하도록 최소한의 옵션을 지정해 준다.<br /> [root@localhost/src]#wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.37.tar.gz /from/ftp://mysql.byungsoo.net/pub/mysql/<br /> [root@localhost/src]#tar -zxvf mysql-5.1.37.tar.gz<br /> [root@localhost/src]#cd mysql- mysql-5.1.37<br /> [root@localhost / mysql-5.1.37]#./configure --with-charset=euckr --prefix=/usr/local/mysql </p></div><div class="content_txt02"><strong>Thank you for choosing MYSQ! 이라는 메시지가 뜰 것이다.</strong></div><div class="ssl03_codebox">[root@localhost /mysql-5.1.37]#make<br /> [root@localhost /mysql-5.1.37]#make install </div><div class="content_txt02"><strong>MYSQL의 데이트를 관리 할 기초적인 테이블들이 생성이 된다.</strong> </div><div class="ssl03_codebox">[root@localhost /mysql-5.1.37]#cd /usr/local/mysql/bin <br /> [root@localhost /mysql-5.1.37]#./mysql_install_db  </div><div class="content_txt02"><strong>보안상 안전하도록 mysql 이라는 유저와 그룹을 지정해서 mysql 을 구동하도록 한다.</strong></div><div class="ssl03_codebox">groupadd mysql<br /> useradd -g mysql mysql<br /> chown -R root /usr/local/mysql<br /> chown -R mysql /usr/local/mysql/var chgrp -R mysql /usr/local/mysql </div><div class="content_txt02"><p><strong>MySQL 소스를 풀어둔 디렉토리로 돌아가 MySQL config 파일을 copy 한다. 메모리가 512MB 경우 my-large.cnf,1~2G 경우 my-huge.cnf ,4G 경우  my-innodb-heavy-4G.cnf</strong><br /> cd /home/gihcuser/src/mysql-5.1.37<br /> cp support-files/my-large.cnf /etc/my.cnf </p><p><strong>부팅할 때 mysql을 시작시키기 위해서  실행 스크립트를 symbolic link해준다.</strong><br /> [root@www /rc3.d]#ln -s /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/rc3.d/S99mysql </p></div><div class="height35"></div><div class="point_line"></div><div class="height35"></div><div class="content_title02">3. PHP 인스톨하기</div><div class="content_title02">(1)PHP_5.2.X 버전 설치</div><div class="content_txt02">http://php.net 에서 다운 받고 압축을 푼다. 압축이 풀린 디렉터리로 이동해서 configure 한다.</div><div class="ssl03_codebox">[root@localhost /src]# wget http://kr2.php.net/get/php-5.2.10.tar.gz/from/kr.php.net/mirror<br /> [root@localhost /src]# tar -zxvf php-5.2.8.tar.gz<br /> [root@localhost /src]# cd php-5.2.8<br /> [root@localhost /php-5.2.8]#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2<br /> /bin/apxs --with-mysql=/usr/local/mysql --with-gd --with-png-dir --with-zlib-dir --with-jpeg-dir --with-kerberos --with-freetype-dir --enable-ftp --enable-sockets <br /> --disable-debug --enable-magic-quotes --enable-gd-native-ttf --enable-dba=shared<br /> [root@localhost /php-5.2.8]# make<br /> [root@localhost /php-5.2.8]# make install </div><div class="content_txt02">만일 libjpeg , libpng ,freetype 부분에 에러가 발생하면 yum 으로 해당 rpm 소스를 설치해준다. 설치할때 3개의 소스  devel에 관한것도 같이 설치해야 한다.<br />아파치가 2.x 버전이면 --with-apxs 이부분을 --with-apxs2 라고 지정을 해줘야 한다. <br />자세한 옵션은 .configure --help|more해서 볼 수 있다.</div><div class="ssl03_codebox">[root@localhost /php-5.2.8]#make<br /> [root@localhost /php-5.2.8]#make install </div><div class="content_txt02">환경 설정을 해주기 위해서 아래처럼 ini파일을 만들어준다.<br /> [root@localhost /php-5.2.8]#cp php.ini-dist /usr/local/lib/php.ini <p></p><p><strong>아파치의 httpd.conf 파일을 편집하여, 아래와 같이 해당라인을 추가한다.</strong></p></div><div class="ssl03_codebox">DirectoryIndex index.html index.php     #(index.php를 추가해준다)<br /> #<br />AddType application/x-tar .tgz<br /><strong><font color="#000000">AddType application/x-httpd-php .php htm  ( 한줄을 추가 한다. )<br />AddType application/x-httpd-php-source .phps   (한줄을 추가 한다. ) </font></strong><p></p><p><font color="#000000"><strong>so파일을 찾을 수 있도록 ld.so.conf의 맨 아래줄에 mysqllib의 디렉터리를 지정해준다.</strong><br /></font> [root@localhost /html]#vi /etc/ld.so.conf<br /> /usr/local/mysql/lib/mysql<br /><font color="#000000"><strong>저장하고 나와서 적용 될 수 있도록  ldconfig해준다</strong><br /></font>[root@localhost /etc] ldconfig </p><p><font color="#000000"><strong>Apache 에서 인식할 수 있도록 Apache 를 재실행 시킨다.</strong><br /></font> [root@localhost /] /usr/local/apache2/bin/apachectl restart </p><p><font color="#000000"><strong>아래와 같은 간단한 소스를 test.php라는 파일로 /home/httpd/html 안에다 만들어 실행해 본다.</strong><br /></font> [root@www /html]#vi test.php<br /><strong><font color="#000000">그 다음 http://작업하고있는 서버 도메인 or IP/test.php   &lt;- php에 대한 정보가 나오면 성공이다. </font></strong></p></div><div class="height35"></div><div class="point_line"></div><div class="height35"></div><div class="content_title02">4. Zend Optimizer 설치</div><div class="ssl03_codebox"><p>http://zend.org/store/free_download.php 에서 최신 버전의 Zend Optimizer 를 다운 받는다.<br />기존 ZendOptimizer 와 다르게 최근 버전은 자동 스크립트를 제공해서 기존처럼 수동으로 라이브러리를 옮겨주고 설정하는 수고를 덜게 했다.<br /><br /> [root@localhost /src]#tar -zxvf  ZendOptimizer-2[1].1.0b-Linux_glibc21-i386.tar.gz<br /> [root@localhost /src]#cd ZendOptimizer-2.1.0b-Linux_glibc21-i386<br /> [root@localhost /ZendOptimizer-2.1.0b-Linux_glibc21-i386]#./install.sh<br /><br /><font color="#000000"><strong>특별한 변경사항 없이 기본으로 “OK” 를 선택해서 인스톨을 마친다. </strong><br /><strong>3.3.9버전의 경우에는 ZendOptimizer디렉토리 내부에서 PHP버전에 맞는 버전의 모듈 파일을 임의의 디렉토	리에 카피하고 php.ini파일의 끝부분에 아래와 같은 내용을 추가해 준다.</strong><br /></font> [Zend]<br /> Zend_optimizer.version=3.3.9<br /> Zend_extension=/절대경로/ZendOptimizer.so<br /><br /><font color="#000000"><strong>/home/httpd/html에 ZendOptimizer를 통해서 속도가 얼마나 향상되었는지 test2.php를 통해서 확인 해 볼 수 있다. Optimization level값을 조절 해 가면서 테스트 해본다.<br /></strong><br /></font> [root@www /html]#vi test2.php </p></div><div class="height35"></div><div class="point_line"></div><div class="height35"></div><div class="content_title02">5. Tomcat 설치</div><div class="content_title02">(1)Tomcat 6.0.18설치 (jdk-6-linux-i586 바이너리)_</div><div class="ssl03_codebox"><p>1) jdk 바이너리 설치 파일 다운로드<br />  http://java.sun.com/j2se/downloads.html<br /> 		  예)j2sdk-1_4_2_05-linux-i586.bin - 리눅스 기반의 jdk 1.4.2 바이너리)<br />        [root@localhost /src]# tar -zxvf apache-tomcat-6.0.18.tar.gz<br />	[root@localhost /src]# mv apache-tomcat-6.0.18 /usr/local/<br />	[root@localhost /src]# ln -s apache-tomcat-6.0.18 tomcat </p><p>2) 설치 파일 실행<br />		다음처럼 다운받은 설치 파일을 실행시키면 jdk-6-linux-i586와 같이<br />		디렉토리가 생성된다.<br /> [root@localhost /src]# ./ jdk-6-linux-i586.bin<br />- 버전 및 플랫폼에따라 파일명은 다를 수 있음. </p><p>3) 원하는 설치경로에 생성된 디렉토리를 옮긴다.<br />	[root@localhost /src] # mv jdk1.6.0 /usr/local </p><p>4) 설치 디렉토리를 jdk 및 jsdk로 심볼릭 링크<br />[root@localhost /src]# cd /usr/local<br />	[root@localhost /local]# ln -s jdk1.6.0 java </p></div><div class="height20"></div><div class="content_title02">(2)아파치 톰켓 커넥터 모듈 설치(jakarta-tomcat-connectors)</div><div class="ssl03_codebox"><p>1) http://jakarta.apache.org/ 에서 현재 설치 버전에 맞는 커넥터 소스 파일을 다운로드 한다.<br />	[root@localhost /src]# jakarta-tomcat-connectors-1.2.16-src.tar.gz </p><p>2) 해당 파일의 압축을  풀고 모듈을 설치한다.<br />	[root@localhost /src]# tar -zvxf jakarta-tomcat-connectors-1.2.16-src.tar.gz<br />	[root@localhost /src]# cd jakarta-tomcat-connectors-1.2.16-src/jk/native<br />	[root@localhost /native]# ./configure --with-apxs=/usr/local/apache2/bin/apxs<br /> 	[root@localhost /native]#  make<br />	[root@localhost /native]#  make install </p><p>3) srcers.properties 파일을 아파치 conf 디렉토리로 복사한 후아래와 같이 값을 수정한다.<br />	[root@localhost /src]# cp jakarta-tomcat-connectors-1.2.16-src /conf/srcers.properties  /usr/local/apache2/conf/<br /><br />		################ JK Connetion #########################<br /> LoadModule jk_module modules/mod_jk.so<br /> JkSrcersFile "/usr/local/apache2/conf/srcers.properties"<br /> JkLogFile       "logs/mod_jk.log"<br /> JkLogLevel      error<br /> JkLogStampFormat         "[%a %b %d %H:%M:%S %Y]"<br /> JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories<br /> JkMount /*.jsp ajp13<br /> JkMount /admin ajp13<br /> JkMount /admin/* ajp13<br /> JkMount /jsp-examples ajp13<br /> JkMount /jsp-examples/* ajp13<br /> jkMount /servlets-examples ajp13<br /> JkMount /servlets-examples/* ajp13<br /> JkMount /webdav ajp13<br /> #JkMount /webdav/* ajp13 </p><p>4)아파치의 httpd.conf 에 모듈 설정부분을 추가한다.<br />LoadModule jk_module          modules/mod_jk.so<br />		JkSrcersFile "/usr/local/apache-ssl/conf/srcers.properties"<br />		JkLogFile "/usr/local/tomcat/logs/mod_jk.log"<br />		JkLogLevel debug<br />		JkMount /examples ajp13<br />		JkMount /examples/* ajp13<br />		JkMount /*.jsp ajp13<br />		JkMount /servlet/* ajp13 </p></div><div class="height20"></div><div class="content_title02">(3)mysql jdbc 드라이버 설치</div><div class="ssl03_codebox"><p>1)http://dev.mysql.com/downloads/connector/j/5.1.html 에서 <br />	드라이버 파일 다운로드 후 tomcat/common/lib/ 에 복사해 넣는다.<br />	(tomcat restart 해야 적용됨)<br /> [root@localhost /src]# wget http://dev.mysql.com/get/Downloads/Connector-J/<br /> mysql-connector-java-5.0.5.tar.gz/from/ftp://mirror.khlug.org/mysql/<br /> [root@localhost mysql-connector-java-5.0.5.]#]#cp mysql-connector-java-5.0.5-bin.jar <br /> /usr/local/tomcat/common/lib/ </p><p><strong><font color="#000000">5.1.2.5 환경변수 PATH 설정</font></strong></p><p>/etc/profile 에 다음 PATH 설정 부분을 추가한다.<br /><br /> ####java##########<br /> export JAVA_HOME=/usr/local/java<br /> export CATALINA_HOME=/usr/local/tomcat<br /> PATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:$PATH<br /> export CLASSPATH=./:$JAVA_HOME/lib/tools.jar:/usr/local/tomcat/common/lib/servlet.jar<br /> /etc/profile 설정후 바로 tomcat을 가동시키려면<br />source /etc/profile 을 실행하여 설정내용이 적용되도록 한다. </p><p><strong><font color="#000000">5.1.3  VirtualHost 추가 (virtualhost 할 때 추가)</font></strong></p><p>1) httpd.conf 설정<br /><br />VirtualHost XXX.XXX.XXX.XXX<br />        	DocumentRoot /home/httpd/html<br />                ServerName hosting.test.kr<br />                Options Indexes ExecCgi FollowSymlinks<br /> JkMount /examples/* ajp13<br />                JkMount /*.jsp ajp13<br />                JkMount /servlet/* ajp13<br />  	        WebAppDeploy java connection /java<br />                CustomLog logs/hosting.inet.co.kr-access_log common<br /> VirtualHost </p><p>2) server.xml 설정<br />Host name="hosting.test.kr" reloadable="true"<br />    Valve className="org.apache.catalina.valves.AccessLogValve"<br />        directory="logs"<br /> prefix=”hosting.inet.co.kr_access_log."<br /> suffix=".txt"<br />        pattern="combined" resolveHosts="false<br />    Context path="/java" docBase="/home/httpd/html/java" <br /> debug="0" reloadable="true" crossContext="true"<br />    Context path="" docBase="/home/httpd/html" debug="0"<br />        reloadable="true" crossContext="true"<br /> Host </p><p><strong><font color="#000000">5.1.4. 서비스 데몬 가동</font></strong></p><p>1)아파치를 가동한다.<br />		# /uar/local/apache2/bin/apachectl start<br /><br />	2)tomcat 을 가동시킨다.<br />		# /usr/local/tomcat/bin/startup.sh </p></div>]]></description>
	<dc:creator>최고관리자</dc:creator>
		<dc:date>2017-03-09T16:44:41+09:00</dc:date>
	</item>
</channel>
</rss>