Tech

Tomcat - windows

onesixx 2011. 11. 29. 03:10
반응형

=================================================================

JSP & Servlet 페이지 개발을 위해서는 이 파일들을 수행시켜줄 Web Container가 필요합니다.
이 웹컨테이너 중 하나가 Tomcat이고, Tomcat를 Windows 7 에 설치해 보겠습니다.
우선 아래 사이트에 접속합니다.
http://tomcat.apache.org/
1. 우선 자신에게 필요한 Tomcat 버전을 확인 및 자신의 컴퓨터가 해당 버전을 작동하기에 적절한지 확인합니다.
  저의 경우는 기존에 JSP&Servlet을 개발한 적이 없으므로 가장 최신 버전인 Tomcat7을 설치 할 것입니다.
Tomcat 7Servlet 3.0, JSP 2.2, EL(Expression Language) 2.2를 구현했고,
Tomcat 7이 작동하기 위해서는 Java 1.6 이상이 필요합니다. Java SDK가 설치되어 있지않은 경우는 Java SDK를 우선적으로 설치하셔야 합니다.
Servlet 3.0 Specification
JSP 2.2 & EL(Expression Laguage) 2.2 Specification
Java 1.6 설치방법



2. Tomcat 7 다운로드 페이지로 이동하여서 자신의 OS 및 bit 수에 맞는 Tomcat을 다운로드 받습니다.
저는 Windows7 64 bit이고, commnad 창에서 설치하기 위해서 64-bit Windows.zip 을 다운받았습니다.

3. 다운받은 zip 파일의 압축을 풉니다.
저는 C:\Java\apache-tomcat-7.0.16 폴더에 압축을 풀었습니다.

4. cmmand 창에서 Tomcat Service를 설치합니다.
우선 '윈도우 키'을 누르고 'cmd' 프로그램을 검색 한 다음 오른쪽 버튼을 클릭해서 '관리자 권한으로 실행'을 클릭합니다.

그 다음 tomcat 압축을 푼 폴더로 이동합니다. 저의 경우는 C:\Java\apache-tomcat-7.0.16 입니다.
그리고 bin 디렉토리로 이동 후 'service.bat install'을 수행하여서 Tomcat Service를 설치합니다.

 

실패시 service.bat uninstall

 

C:\sugarcrm\tomcat\bin> service.bat install
Installing the service 'Tomcat7' ...
Using CATALINA_HOME:    "C:\sugarcrm\tomcat"
Using CATALINA_BASE:    "C:\sugarcrm\tomcat"
Using JAVA_HOME:        "C:\Program Files\Java\jdk1.6.0_29"
Using JRE_HOME:         "C:\Program Files\Java\jre6"
Using JVM:              "C:\Program Files\Java\jre6\bin\server\jvm.dll"
The service 'Tomcat7' has been installed.

 

 

5. Windows 서비스에서 Apache Tomcat 7을 시작시켜 줍니다.
우선 아래 경로를 통하여서 Windows 서비스 탭으로 이동합니다.
시작 -> 제어판 –> (시스템 및 보안 –>) 관리 도구 -> 서비스
(또는 실행 창(윈도우 키 + R) 에서 'service.msc' 실행)


그리고 Apache Tomcat 7 서비스를 찾아서 클릭한 후 서비스 시작을 클릭해서 Tomcat 서비스를 시작시키고, 정상적으로 시작표시가 되는 것을 확인합니다.

추가적 옵션으로 윈도우 시작 시 자동으로 Tomcat Service를 시작시키고 싶으면
'Apache Tomcat 7'을 오른쪽 마우스를 클릭해서 속성을 클릭하여 속성 창에서 시작 유형을 자동으로 변경 후 확인을 클릭하면 Windows가 시작될 때 자동으로 Apache Tomcat 7 서비스가 시작됩니다.

개발을 위한 것이라면 기본적으로 셋팅 해놓는 것이 편합니다.

6. Tomcat이 정상적으로 설치되었는지 확인합니다.
인터넷 브라우저를 실행 시키고 'http://localhost:8080/'로 접속하여서 Tomcat이 정상적으로 설치 된 것을 확인합니다. 아래 그림과 같이 뜨면 정상적으로 설치 된 겁니다.

 

 

 

 

7. 관리자 권한을 생성해 줍니다.
Tomcat 관리자 페이지에서 웹 페이지를 관리하려면 'Server Status', 'Manager App', 'Host Manager'에 접근하려고 하면 관리자 ID 및 Password가 필요한데, 기본 관리자 계정이 존재하지 않으므로 생성해 주어야 합니다.

저는 ID: tomcat, password:tomcat인 계정을 생성하겠습니다.
관리자 계정을 생성하기 위해서는 Tomcat 설치 폴더\conf\tomcat-users.xml 파일을 수정해 주어야 합니다.
저의 경우 C:\Java\apache-tomcat-7.0.16\conf\tomcat-users.xml 입니다.
기본적으로는 아래와 같이 작성되어있습니다.
아래 쪽에 보면 user 등록에 대한 예시가 있습니다.

<?xml version='1.0' encoding='utf-8'?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<tomcat-users>
<!--
  NOTE:  By default, no user is included in the "manager-gui" role required
  to operate the "/manager/html" web application.  If you wish to use this app,
  you must define such a user - the username and password are arbitrary.
-->
<!--
  NOTE:  The sample user and role entries below are wrapped in a comment
  and thus are ignored when reading this file. Do not forget to remove
  <!.. ..> that surrounds them.
-->
<!--
  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <user username="tomcat" password="tomcat" roles="tomcat"/>
  <user username="both" password="tomcat" roles="tomcat,role1"/>
  <user username="role1" password="tomcat" roles="role1"/>
-->
</tomcat-users>

 

우리는 <tomcat-user></tomcat-user>사이에 우리가 필요한 역할(role) 및 계정(user)를 추가해 주면 됩니다.
기존에 주석처리 되어있는 것은 삭제하였습니다.
그리고 아래처럼 'admin-gui','manager-gui' role을 추가한 뒤
생성한 계정에 위의 두 role 지정해 주면 됩니다.
아래를 참고하여서 파일을 수정하고 저장합니다.

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="admin-gui"/>
  <role rolename="manager-gui"/>  <user username="tomcat" password="tomcat" roles="admin-gui, manager-gui"/>
</tomcat-users>

 

그리고 Tomcat Service를 재시작 한 후에 등록한 username과 password를 이용하면 manager 페이지에 접근할 수 있습니다.

이로써 Tomcat 설치가 끝났습니다!

===================================================================


윈도우 방화벽 포트 범위 지정 열기 기타

2011/10/26 11:05

복사http://blog.naver.com/nawoo/80143734335

참고 : http://blog.naver.com/PostView.nhn?blogId=ejkh3&logNo=110117280978

for /L %i in (9000,1,9100) do netsh firewall add portopening TCP %i "test %"

1. FOR 명령어

FOR /L %변수 IN(시작,단계,끝) DO 명령 [명령-매개 변수]

단계별로 증가/감소하는 시작부터 끝까지의 일련의 숫자

(1,1,5) = 1 2 3 4 5

(5,-1,1) = 5 4 3 2 1

2. Netsh 명령어

Netsh는 로컬 또는 원격 컴퓨터용 네트워킹 구성 요소를 위한 명령줄 및 스크립팅 유틸리티입니다

2.1 netsh 컨텍스트로부터 상속된 명령:


..             - 한 컨텍스트 수준 위로 이동합니다.

aaaa           - `netsh aaaa' 컨텍스트의 변경 내용입니다.

abort          - 오프라인 모드에서 변경된 내용은 무시합니다.

add            - 항목 목록에 구성 항목을 추가합니다.

alias          - 별칭을 추가합니다.

bridge         - `netsh bridge' 컨텍스트의 변경 내용입니다.

bye            - 프로그램을 끝냅니다.

commit         - 오프라인 모드에서 변경한 내용을 적용합니다.

delete         - 항목 목록에서 구성 항목을 삭제합니다.

dhcp           - `netsh dhcp' 컨텍스트의 변경 내용입니다.

diag           - `netsh diag' 컨텍스트의 변경 내용입니다.

exit           - 프로그램을 끝냅니다.

firewall       - `netsh firewall' 컨텍스트의 변경 내용입니다.

interface      - `netsh interface' 컨텍스트의 변경 내용입니다.

ipsec          - `netsh ipsec' 컨텍스트의 변경 내용입니다.

offline        - 현재 모드를 오프라인 모드로 설정합니다.

online         - 현재 모드를 온라인 모드로 설정합니다.

popd           - 해당 스택으로부터 컨텍스트를 표시합니다.

pushd          - 현재 컨텍스트를 스택에 넣습니다.

quit           - 프로그램을 끝냅니다.

ras            - `netsh ras' 컨텍스트의 변경 내용입니다.

routing        - `netsh routing' 컨텍스트의 변경 내용입니다.

rpc            - `netsh rpc' 컨텍스트의 변경 내용입니다.

set            - 구성 설정을 업데이트합니다.

show           - 정보를 표시합니다.

unalias        - 별칭을 삭제합니다.

wins           - `netsh wins' 컨텍스트의 변경 내용입니다.

winsock        - `netsh winsock' 컨텍스트의 변경 내용입니다.

2.2 netsh 하위 firewall (방화벽 설정)

?              - 명령 목록을 표시합니다.

add            - 방화벽 구성을 추가합니다.

delete         - 방화벽 구성을 삭제합니다.

dump           - 구성 스크립트를 표시합니다.

help           - 명령 목록을 표시합니다.

reset          - 방화벽 구성을 기본값으로 다시 설정합니다.

set            - 방화벽 구성을 설정합니다.

show           - 방화벽 구성 정보를 표시합니다.

2.3 firewall 하위 add 명령

allowedprogram - 방화벽 허용 프로그램 구성을 추가합니다.

portopening - 방화벽 포트 구성을 추가합니다.

2.4 add 하위 portopening 명령

add portopening

      [ protocol = ] TCP|UDP|ALL

      [ port = ] 1-65535

      [ name = ] name

      [ [ mode = ] ENABLE|DISABLE

        [ scope = ] ALL|SUBNET|CUSTOM

        [ addresses = ] addresses

        [ profile = ] CURRENT|DOMAIN|STANDARD|ALL

        [ interface = ] name ]

  매개 변수:

  protocol - 포트 프로토콜

      TCP - TCP(Transmission Control Protocol)

      UDP - UDP(User Datagram Protocol)

      ALL - 모든 프로토콜

  port - 포트 번호

  name - 포트 이름

  mode - 포트 모드(옵션)

      ENABLE  - 방화벽을 통과할 수 있음(기본값)

      DISABLE - 방화벽을 통과할 수 없음

  scope - 포트 범위(옵션)

      ALL    - 모든 트래픽이 방화벽을 통과할 수 있음(기본값)

      SUBNET - 로컬 네트워크(서브넷) 트래픽만 방화벽을 통과할 수 있음

      CUSTOM - 특정 트래픽만 방화벽을 통과할 수 있음

  addresses - 사용자 지정 범위 주소(옵션).

  profile - 구성 프로필(옵션)

      CURRENT  - 현재 프로필(기본값)

      DOMAIN   - 도메인 프로필

      STANDARD - 표준 프로필

      ALL      - 모든 프로필

  interface - 인터페이스 이름(옵션)

  Remarks: 'profile' 및 'interface'는 같이 사용될 수 없습니다.

           'scope' 및 'interface'는 같이 사용될 수 없습니다.

           'addresses'를 지정하려면 'scope'에 'CUSTOM'을 사용해야 합니다.

  예:

      add portopening TCP 80 MyWebPort

      add portopening UDP 500 IKE ENABLE ALL

      add portopening ALL 53 DNS ENABLE CUSTOM

          157.60.0.1,172.16.0.0/16,10.0.0.0/255.0.0.0,LocalSubnet

      add portopening protocol = TCP port = 80 name = MyWebPort

      add portopening protocol = UDP port = 500 name = IKE mode = ENABLE scope =

ALL

      add portopening protocol = ALL port = 53 name = DNS mode = ENABLE

          scope = CUSTOM addresses =

          157.60.0.1,172.16.0.0/16,10.0.0.0/255.0.0.0,LocalSubnet

3. 방화벽 포트 열기


3.1 특정 포트 방화벽 열기

netsh firewall add portopening TCP 8080 "IIS 8080"

- TCP 8080 포트 열고 이름은 IIS 8080으로

 

 

netsh advfirewall firewall" 명령을 대신 사용하십시오

 

netsh advfirewall firewall add rule name=”Open Port 8080” dir=in action=allow protocol=TCP localport=8080

 

 

 

 

 

 

3.2 사내 테스트용으로 사내에서만 접속 가능한 포트 열기


netsh firewall add portopening TCP 8080 "IIS 8080" ENABLE SUBNET

- TCP 8080 포트 열고 이름은 IIS 8080 접근 허용하고 서브넷에서만 접속 가능

3.3 사내 테스트용으로 포트 일괄 열기

FOR /L %i IN (8000,1,8020) DO netsh firewall add portopening TCP %i "IIS %i" ENABLE SUBNET

- TCP 에 8000 부터 8020 까지 사내에서 접근 가능한 포트 한방에 열기

4. 열린 포트 확인

netsh firewall show portopening

5. 열린 포트 삭제(닫기)

5.1 한개만

netsh firewall delete portopening TCP 8080

5.2 일괄

FOR /L %i IN (8000,1,8020) DO netsh firewall delete portopening TCP %i

ps...

FOR ? = 스크롤의 압박...

 

===================================================================

http://blogs.oracle.com/snoopy40/entry/jdbc_%EC%82%AC%EC%9A%A9%EC%9D%84_%EC%9C%84%ED%95%9C_classpath_%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0

 

. WEB-INF/lib 를 이용하는 방법
tomcat을 통해 서비스 되는 웹서비스의 홈디렉토리 아래에는 WEB-INF 라는 특수한 디렉토리가 있습니다. 이 디렉토리 아래에 lib 라는 폴더를 만들어놓고 jar 파일을 넣어두면 CLASSPATH에 경로를 추가하여 jar 파일을 등록하는 것과 마찬가지로 jar 파일을 사용할 수 있습니다.
cp /ust/postgres/8.2/jdbc/postgres.jar /usr/apache/s10ref/web/WEB-INF/lib/postgres.jar
하여 파일을 복사하고 apache를 재시작하면 CLASSPATH를 등록하여 사용한 것과 마찬가지로 "org.postgresql.Driver"를 사용할 수 있습니다.

반응형

'Tech' 카테고리의 다른 글

윈도우7 인증 - A.I_110627  (4) 2012.01.01
윈도우7 오라클10g 설치 방법 Oracle  (1) 2011.12.14
talend split file  (0) 2011.12.07
bcp  (0) 2011.11.09
Failed to create the Java Machine  (0) 2011.10.29
Talend 파일명  (0) 2011.10.28