본문 바로가기

SEVER

[linux] apache+php+mysql+tomcat - jk1 connector

apache+php+mysql+tomcat - jk1 connector
*설치환경

Fedora 5
jdk 1.5.08
apache 2.2.2
tomcat 5.5
mysql 5.0.21
tomcat-connectors-1.2.18(jk connector)
php 5.1.4

Fedora 설치를 사용자 정의로 안하구 모더라? 가장 쉬운 방법으로 했는데... 이름은 기억안남.

Fedora 설치 후 yum -y update

yum -y install gcc cpp gcc-c++ compat-gcc-32-g77 flex libjpeg-devel libpng-devel libtiff-devel freetype-devel openldap-devel pam-devel sendmail-cf vsftpd telnet-server
(요놈들은 언젠가는 install 시켜야되는데 update 시키구 했던걸루 기억함... 아마도...)
yum install autoconf automake libtool(요놈도 그냥 install 시키는김에 같이 해버리자. 문서화 시키며 깐것이 아니라 기억이 가물가물...)

* php설치(6번)까지는 주로 여기(http://www.superuser.co.kr/home/lecture/index.php?cateNo=1&secNo=27&theNo=&leccode=10587)와 다른 여러곳 참고.(너무 많아서 출처를 밝히지 못 하는것이 죄송. 제가 다 기억을 못 합니다.)

1. zlib, libpng, free type, libjpeg, gd, libxml2 설치
(1) zlib 설치
  zlib은 압축과 관련된 라이브러리 입니다.
  cd /usr/local
  wget http://ftp.superuser.co.kr/pub/etc/zlib-1.2.3.tar.bz2
  tar xvfj zlib-1.2.3.tar.bz2
  cd zlib-1.2.3
  ./configure && make && make install
  cd ..
  rm -rf zlib-1.2.3*
(2) libpng 설치
  png 포맷을 다루기 위한 라이브러리입니다.
  wget http://ftp.superuser.co.kr/pub/etc/libpng-1.2.10.tar.bz2
  tar xvfj libpng-1.2.10.tar.bz2
  cd libpng-1.2.10
  cp scripts/makefile.linux makefile
  make test && make install
  cd ..
  rm -rf libpng-1.2.10*

(3) freetype 2 설치
글짜를 그릴 때 쓰는 라이브러리 입니다.
  wget http://ftp.superuser.co.kr/pub/etc/freetype-2.2.1.tar.bz2
  tar xvfj freetype-2.2.1.tar.bz2
  cd freetype-2.2.1
  ./configure && make && make install
  cd ..
  rm -rf freetype-2.2.1*

(4) libjpeg 설치
  wget http://ftp.superuser.co.kr/pub/etc/jpegsrc.v6b.tar.gz
  tar xvfz jpegsrc.v6b.tar.gz
  cd jpeg-6b
  ./configure --enable-shared --enable-static
  make && make test
  mkdir /usr/local/man/man1
  make install
  cd ..
  rm -rf jpeg*

(5) gd 설치
  wget http://ftp.superuser.co.kr/pub/etc/gd-2.0.33.tar.gz
  tar xvfz gd-2.0.33.tar.gz
  cd gd-2.0.33
  ./configure && make && make install
  cd ..
  rm -rf gd-2.0.33*

(6) libxml2 설치
wget ftp://xmlsoft.org/libxml2/libxml2-2.6.19.tar.gz
tar zxvf  libxml2-2.6.19.tar.gz
configure --prefix=/usr
make
make install



2. Mysql 설치(조금 위험. 잘 하시는 분은 알아서 까세요. 하두 여러개를 봤더니 성공은 했는데 어떤걸 보며 했는지 기억이 가물가물...;;)
  wget http://ftp.superuser.co.kr/pub/mysql/mysql-5.0.21.tar.gz
  tar xvfz mysql-5.0.21.tar.gz
  cd mysql-5.0.21
  CFLAGS=”-03” CXX=gcc CXXFLAGS=”-03 -felide-constructors -fno-exceptions \
  -fno-rtti”
  ./configure --prefix=/usr/local/mysql --with-charset=euckr
  make && make install

  cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
  /usr/local/mysql/bin/mysql_install_db
  useradd -M mysql
 
  chown -R root /usr/local/mysql
  chown -R mysql /usr/local/mysql/var
  chown -R mysql /usr/local/mysql

  ln -s /usr/local/mysql/bin/mysql /usr/bin/
  ln -s /usr/local/mysql/bin/mysqldump /usr/bin/


3. apache 설치
  wget http://ftp.apache-kr.org/httpd/httpd-2.2.2.tar.gz
  tar xvfz httpd-2.2.2.tar.gz
  cd httpd-2.2.2
  ./configure --prefix=/usr/local/apache2 --enable-modules=all --enable-mods-shared=all
  make && make install


4. php 설치
  wget http://ftp.superuser.co.kr/pub/php/php-5.1.4.tar.bz2
  tar xvfj php-5.1.4.tar.bz2
  cd php-5.1.4

  CFLAGS="-O3 -march=i686 -funroll-loops -fomit-frame-pointer" \
  ./configure \
  --with-apxs2=/usr/local/apache2/bin/apxs \
  --with-zlib --with-gd --with-ttf --with-png \
  --with-expat-dir=/usr --with-gmp --with-xml \
  --with-mysql=/usr/local/mysql \
  --with-language=korean \
  --with-charset=euckr \
  --disable-debug --disable-posix --disable-rpath \
  --enable-safe-mode --enable-magic-quotes \
  --disable-dmalloc --enable-bcmath \
  --enable-dio --enable-gd-native-ttf \
  --enable-sysvsem --enable-sysvshm \
  --enable-wddx --enable-versioning \
  --enable-pic --enable-inline-optimization \
  --enable-memory-limit --enable-mbstring \
  --enable-mbregex --enable-mbstr-enc-trans \
  --with-config-file- --enable-ftp --disable-debug --enable-track-vars=yes \
  --with-jpeg-dir --with-freetype-dir \
  --enable-gd-native-ttf --enable-dl

/*
  php설치때 에러날시 ex)configure: error: xml2-config not found. Please check your libxml2 installation.
  yum install libxml2-devel (이것만 깔았을때 또 에러남)
  yum install 까먹음. 모라구 나오는데 거기에 -devel 붙이구 yum install 하면 됨.
*/

  make && make install

  cp php.ini-dist /usr/local/lib/php.ini
- php.ini 파일을 복사 해 줍니다.
  cd ..
  rm -rf php-5.1.4.tar.bz2


5. Zend Optimizer 설치
  wget http://ftp.superuser.co.kr/pub/ZendOptimizer/ZendOptimizer-3.0.1-linux-glibc21-i386.tar.gz
  tar xvfz ZendOptimizer-3.0.1-linux-glibc21-i386.tar.gz
  cd ZendOptimizer-3.0.1-linux-glibc21-i386
  ./install.sh

  cd ..
  rm -rf ZendOptimizer-3.0.1-linux-glibc21-i386*

6. apache 에서 php 되게 httpd.conf 파일 설정

AddType application/x-httpd-php .php .phtml .php3 .html .htm
AddType application/x-httpd-php-source .phps
위 내용을 추가해 줍니다. 추가 하게 되면 위 파일들에 있는 php 코드는 실행하게 됩니다.

DirectoryIndex index.html index.htm index.php index.php3 index.cgi

CustomLog logs/access_log common 이렇게 되어 있는 것을 ..
SetEnvIfNoCase Request_URI (gif|png|jpg|css|js|bmp|jpeg|swf)$ IMAGE=1
CustomLog /usr/local/apache/logs/access_log common env=!IMAGE

더 있는데 http://www.superuser.co.kr/home/lecture/index.php?cateNo=1&secNo=27&theNo=&leccode=10587 여기 보면 나옴.

7. jdk 설치
rpm 으로 설치 했음.
java.sun.com -> downloads -> jdk-1_5_0_08-linux-i586-rpm.bin 요렇게 가서 다운받고
다운받은 곳으로 가서 sh jdk-1_5_0_08-linux-i586-rpm.bin(이렇게 했던가?)
다음은 알아서 잘 깔림.


환경변수는
/etc 이리가서 gedit profile

끝에 다가

JAVA_HOME=/usr/java/jdk1.5.0_08
export JAVA_HOME
PATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:$APACHE_HOME/bin:$PATH
export PATH=$PATH:/usr/local/bin:/usr/local/tomcat/bin
export CATALINA_HOME=/usr/local/tomcat
export APACHE_HOME=/usr/local/apache
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$CATALINA_HOME/common/lib/servlet-api.jar:$CATALINA_HOME/common/lib/jsp-api.jar:

tomcat 은 아직 안 깔았지만 다시 와서 열구 쓰구 저장하기 귀찮으니 미리.. ㅋ
저장하구 닫은 후 source /etc/profile


8. tomcat 설치
톰캣을 잘~ 다운받고 local에다 놓은 다음
/usr/local 에서
tar xvfz apache-tomcat-5.5.17.tar.gz
ln -s /usr/local/apache-tomcat-5.5.17 /usr/local/tomcat

9. tomcat connector(jk) 설치
wget http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.18/tomcat-connectors-1.2.18-src.tar.gz
tar xzvf tomcat-connectors-1.2.18-src.tar.gz


/jk/native2/ 에서
./buildconf.sh
./configure --with-apxs2=/usr/local/apache2/bin/apxs
make && make install


---------------------------------------------------------------------------
jk connector 설정

- workers.properties(/usr/local/apache2/conf/)

workers.tomcat_home=/usr/local/tomcat
workers.java_home=/usr/java/jdk1.5.0_05
ps=/
worker.list=default

worker.default.port=8009
worker.default.host=localhost
worker.default.type=ajp13
worker.default.lbfactor=1

- httpd.conf 설정(/usr/local/apache2/conf/)
추가
#
# Mod_jk settings
#
# Load mod_jk module
LoadModule jk_module modules/mod_jk.so
# Where to find workers.properties
JkWorkersFile conf/workers.properties
# Where to put jk logs
JkLogFile logs/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel debug
# Select the log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
# JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"
# Send JSPs for context /jsp-examples to worker named default
JkMount /jsp-examples/*.jsp default
# Send servlets-examples to worker named default
JkMount /servlets-examples/* default
필요시 여기에 추가
ex) JkMount /*.jsp default

DocumentRoot "usr/local/apache2/htdocs" -> DocumentRoot "/usr/local/tomcat/webapps/ROOT"
->

DirectoryIndex 에 index.jsp 추가

참고 사이트:

http://www.superuser.co.kr

http://blog.naver.com/imdkkang?Redirect=Log&logNo=120025664843

http://kltp.kldp.org/stories.php?story=04/01/07/5113171

http://kin.naver.com/knowhow/entry.php?d1id=8&dir_id=8&eid=iynmdyMEY9bClsuU3KW0bA5xT1CWiw5G

등등 즐겨찾기 안 해놓은 사이트. 이리저리 구글링하다 들어간 사이트.