반응형

아파치와 톰캣을 tomcat connecotr를 통해서 연동하는 방법

 

- 필수 설치 패키지

autoconf libtool httpd-devel

 

- tomcat connector 다운로드

tomcat-connectors-1.2.49-src.tar.gz

https://tomcat.apache.org/download-connectors.cgi

 

Apache Tomcat® - Tomcat Connectors (mod_jk) Downloads

You must verify the integrity of the downloaded files. We provide OpenPGP signatures for every release file. This signature should be matched against the KEYS file which contains the OpenPGP keys of Tomcat's Release Managers. We also provide SHA512 checksu

tomcat.apache.org

 

-  tomcat connector 압축 풀기 및 설치

(apxs는 필수 설치된 아파치의 bin 폴더 안에 apxs가 존재

여기서는 /home/user/web/apache/bin/apxs 경로에 위치함)

tar -zxvf tomcat-connectors-1.2.49-src.tar.gz
cd ./tomcat-connectors-1.2.49-src/native
./configure --with-apxs=/home/user/web/apache/bin/apxs
make
make install

 

- mod_jk 모듈 권한 변경

(보통 755 권한으로 되어있는 것 같음)

cd /home/user/web/apache/modules/
chmod 755 ./mod_jk.so

 

- httpd.conf 파일 수정

vi /home/user/web/apache/conf/httpd.conf

 

-- LoadModule로 검색 후 하단에 추가

LoadModule jk_module modules/mod_jk.so

 

-- Include로 검색 후 하단에 추가

# mod_jk Connector
Include conf/extra/httpd-modjk.conf

 

- workers.properties 파일 생성

(여기서는 instance를 2개로 분리했기 때문에 2개

아래 내용 참고하여 더 생성하거나 삭제)

vi /home/user/web/apache/conf/extra/workers.properties
worker.list=worker1, worker2

worker.worker1.port=8009
worker.worker1.host=localhost
worker.wokrer1.type=ajp13

worker.worker2.port=8019
worker.worker2.host=localhost
worker.wokrer2.type=ajp13

 

-- workers.properties 권한 변경

chmod 755 ./workers.properties

 

- mod_jk conf 파일 생성

vi /home/user/web/apache/conf/extra/httpd-modjk.conf
<IfModule jk_module>
	JkWorkersFile conf/extra/workers.properties
	JkShmFile logs/mod_jk.shm
	JkLogFile logs/mod_jk.log
	JkLogLevel info
	JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"

	#JkMount
	JkMount /* worker1
	JkMount /test/* worker2
</IfModule>

 

-- mod_jk conf 권한 변경

chmod 755 ./httpd-modjk.conf

 

- 톰캣 server.xml 수정

아래 부분 주석 제거

<!--
    <Connector protocol="AJP/1.3"
               address="::1"
               port="8009"
               redirectPort="8443"
               maxParameterCount="1000"
               />
    -->

 

Secret Key가 없기 때문에 secretRequired="false" 추가

	<Connector protocol="AJP/1.3"
               address="::1" secretRequired="false"
               port="8009"
               redirectPort="8443"
               maxParameterCount="1000"
               />

 

* 추가 인스턴스가 있는경우

workers.properties 파일에서 지정한 8019 포트로

인스턴스 경로의 server.xml 변경하여 적용

 

* 톰캣 재가동 후 80 포트로 접속시 8080 포트의 톰캣 화면이 나오면 완료

반응형
반응형

톰캣은 설치되어있는 상태에서 톰캣 인스턴스를 여러개 만드는 방법

여기에서느 톰캣은 /home/user/was 경로에 설치가 되어있음.

 

- instance 생성 및 (conf,logs,temp,webapps,work) 필요 파일 복사

-- 인스턴스를 관리하기 위한 apps라는 경로 생성 후 기존 설치된 톰캣의 경로에서 필요한 부분 복사

cd /home/user/was

mkdir apps
cd ./apps

mkdir instance1
cp -r /home/user/was/tomcat/conf /home/user/was/apps/instance1
cp -r /home/user/was/tomcat/logs /home/user/was/apps/instance1
cp -r /home/user/was/tomcat/temp /home/user/was/apps/instance1
cp -r /home/user/was/tomcat/webapps /home/user/was/apps/instance1
cp -r /home/user/was/tomcat/work /home/user/was/apps/instance1

 

- server.xml 수정

vi /home/user/was/apps/instance1/conf/server.xml

 

- 아래 부분을 찾아서 포트 번호 변경

<Server port="8005" shutdown="SHUTDOWN">

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               maxParameterCount="1000"
               />


<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector protocol="AJP/1.3"
               address="::1"
               port="8009"
               redirectPort="8443"
               maxParameterCount="1000"
               />

 

- 실행 스크립트

-- 시작 스크립트 생성

vi instance1_startup.sh
#!/bin/sh
CATALINA_BASE=/home/user/was/apps/instance1

CATALINA_OPTS="-Denv.servername=instance1"

TOMCAT_HOME=/home/user/was/tomcat

export CATALINA_BASE CATALINA_OPTS TOMCAT_HOME

cd $TOMCAT_HOME/bin

./startup.sh

 

-- 종료 스크립스 생성

vi instance1_shutdown.sh
#!/bin/sh
CATALINA_BASE=/home/user/was/apps/instance1

CATALINA_OPTS="-Denv.servername=instance1"

TOMCAT_HOME=/home/user/was/tomcat

export CATALINA_BASE CATALINA_OPTS TOMCAT_HOME

cd $TOMCAT_HOME/bin

./shutdown.sh

 

-- 스크립트 권한 변경

chmod 755 instance1_startup.sh
chmod 755 instance1_shutdown.sh

 

*추가 인스턴스를 생성시에는 위의 과정을 반복 또는 생성된 instance를 복사 후 수정

반응형
반응형

외부 네트워크가 불가능한 상황에서 Apache를 설치하는 방법

Rocky Linux 9

 

- Apache Source 파일 다운로드

아래의 URL을 접속하여, tar파일을 다운로드

https://httpd.apache.org/download.cgi

 

Download - The Apache HTTP Server Project

Downloading the Apache HTTP Server Use the links below to download the Apache HTTP Server from our download servers. You must verify the integrity of the downloaded files using signatures downloaded from our main distribution directory. The signatures can

httpd.apache.org

 

- 필수 패키지 확인 및 설치
이 부분이 가장 시간이 많이  소요되며, 외부 인터넷이 안되는 불편함을 느끼는 부분

apr
apr-util
gcc
gcc-c++
pcre
pcre-devel
expat
expat-devel
zlib-devel

openssl(ssl 적용시)

 

- 아파치 경로 생성 및 압축 해제

(/home/user 경로안에 생성)

#아파치 설치 경로 생성
cd /home/user
mkdir ./web

#httpd-2.4.54.tar.gz 파일 옮겨놓고 압축해제
cd /home/user/web
tar -zxvf httpd-2.4.54.tar.gz

#심볼릭 링크 생성
ln -s /home/user/web/httpd-2.4.54 apache

 

- apr & apr-util 압축 풀기 및 이동

( apr & apr-util 의 경우 tar파일을 받아 압축해제 후 아파치 경로의 srclib로 이동시켜줘야한다.)

아래의 경로에서 다운받을 수 있다.

https://apr.apache.org/download.cgi

 

Download - The Apache Portable Runtime Project

The currently selected mirror is https://dlcdn.apache.org/. If you encounter a problem with this mirror, please select another mirror. If all mirrors are failing, there are backup mirrors (at the end of the mirrors list) that should be available. You may a

apr.apache.org

#apr & apr-util 압축해제
tar -zxvf apr-1.7.0.tar.gz
tar -zxvf apr-util-1.6.1.tar.gz

#apr & apr-util 이동
mv apr-1.7.0 /home/user/web/apache/srclib/apr 
mv apr-util-1.6.1 /home/user/web/apache/srclib/apr-util

 

 

- gcc & gcc-c++ & pcre & pcre-devel &  expat & expat-devel & zlib-devel 

서버마다 설치되어있는 경우도 있고, OS 버전에 맞게 다운로드 받아서 수동 설치

 

 

- 아파치 설치 (ssl 미적용)

cd /dopco/web/apache
./configure --prefix=/home/user/web/apache --with-included-apr --enable-module=so --enable-mods-shared=all --enable-so --enable-deflate --enable-rewrite
make
make install

 

경우에 따라서 아래의 아파치 설치 옵션 참고

https://httpd.apache.org/docs/2.4/programs/configure.html#installationdirectories

 

configure - 소스 트리를 구성한다 - Apache HTTP Server Version 2.4

configure - 소스 트리를 구성한다 이 문서는 최신판 번역이 아닙니다. 최근에 변경된 내용은 영어 문서를 참고하세요. configure 스크립트는 특정 플래폼에서 아파치 웹서버를 컴파일하고 설치하기

httpd.apache.org

 

 

-http.conf 파일 수정

vi /home/user/web/apache/conf/http.conf

#ServerName 검색 후 주석처리 해제
ServerName localhost:80

 

 

- 아파치 실행

/home/user/web/apache/bin/apachectl start

 

---------------------- 아래의 내용은 필요한 경우 참조----------------------

 

- 80포트 방화벽 허용

(su - 통해 root 접속 필요)

firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --reload
firewall-cmd --list-ports

 

- apache 실행 권한 부여

(user로 apache 실행이 불가한 경우 su - 통해 root 접속 후 user에 실행권한 부여 필요)

chmod -Rf 755 /home/user/
cd /home/user/web/apache/bin
chown root:user httpd
chmod +s httpd
chown user:user apachectl
반응형
반응형

톰캣 8.5.6 버전을 설치하여 이클립스에 서버를 올리려하는데


a tomcat 8.0 installation is expected. 와 같은 오류가 나오면서 톰캣 설정을 할 수 없는 문제가 발생


8.5.x 버전은 이클립스 tomcat8로 사용이 불가능하다고 한다. 


첫번째 해결하기 위한 방법은 홈페이지에서 8.0.x 버전을 다운받는 것이다.(추천)


두번째는 톰캣의 ServerInfo.properties 파일을 수정하는 것이다. 


ServerInfo.properties 파일은 톰캣 폴더 아래 lib/catalina.jar 파일 안에 있으므로 


catalina.jar 파일 압축을 해제한 후 ServerInfo.properties 을 열고 안에 버전을 수정을 하면된다.



server.info=Apache Tomcat/8.5.6

파일의 내용을 위에서 아래와 같이 수정하고 난 후 다시 catalina.jar 파일로 압축해주면 오류가 사라지며, 톰캣 8로 사용이 가능하다.


server.info=Apache Tomcat/8.0.5.6


그냥 8.0.x 버전을 다운 받아서 실행 하는 것을 추천

반응형
반응형

1.  톰캣 홈페이지에서 원하는 버전의 톰캣을 다운 받는다. ( http://tomcat.apache.org/  )

   core 에서 tar.gz 파일을 다운

(글쓴이는 8을 다운 받았다. 8버전을 받는다면, 8.5.6 과 8.0.38 중에 8.0.38버전을 받는 것을 추천 

그 이유는 이클립스에서 톰캣 8 서버를 설치하는데 8.5.6은 오류가 발생해서 고치는 과정이 필요하다.)


2. 다운 받은 톰캣 tar.gz 파일의 압축을 해제한다. 

(이름이 길기때문에 이름 변경후 압축 풀기를 추천, 글쓴이는 tomcat8로 변경 후 작업 )


3. 압축을 해제한 tomcat 폴더를 /usr/local 폴더로 이동시켜준다.

' sudo mv tomcat8 /usr/local ' 명령어 실행 

(/usr/local 경로가 존재하지 않으면, ' sudo mkdir /usr/local ' 명령어로 폴더 생성)


4. 톰캣의 경로를 라이브러리 쪽으로 심볼릭링크 설정을 해준다.

Library 경로에 Tomcat 폴더가 있는경우 ' sudo rm -f /Library/Tomcat ' 명령어 실행

( 처음 설치하는 경우 존재하지 않는다. )

' sudo ln -s /usr/local/tomcat8 /Library/Tomcat ' 명령어를 통해 심볼릭 링크를 설정


5. 톰캣 폴더의 소유주를 계정에 맞게 지정해주고, 톰캣 폴더 아래 bin폴더 아래의 쉘들을 실행할 권한을 준다.

' sudo chown -R <YourID> /Library/Tomcat '

' sudo chmod +x /Library/Tomcat/bin/*.sh '


마지막으로 이클립스에 톰캣을 연결해주고 실행을 해보면된다.

( 'sudo /Library/Tomcat/bin/startup.sh' 명령어를 통해 톰캣을 실행 할 수 있으며, http://127.0.0.1:8080 접속으로 톰캣 화면이 나오면 정상적으로 설치 된것 , 'sudo /Library/Tomcat/bin/shutdown.sh' 명령어로 중지 )

반응형
반응형
Check that the corresponding file exists within your web application archive!

톰캣에 웹 프로젝트를 올린 후 이러한 에러가 발생했다.

tomcat - conf -web.xml

web.xml 파일이 존재하는지 확인한 후에

존재 하지 않는다면 해당경로에 web.xml파일을 넣어주면된다.

반응형

+ Recent posts