Tomcatでserver.xmlのContextの構成
3486 ワード
Webアプリケーションを開発した後、他のユーザーがアクセスできるように、アプリケーションをWebサーバにパブリッシュする必要があります.JAVAのWEB開発分野では、通常TOMCATをWEBサーバとしてテストまたは正式に導入しています.
一般的に、WEBアプリケーションをWAR形式にパッケージ化し、TOMCATのWEBAPPディレクトリにコピーしてパブリッシュします.通常、TOMCATはWARファイルを自動的に解凍して対応するディレクトリを生成し、メモリにこのWEBアプリケーションに対応するCONTEXTパスを動的に作成します.例えばWARファイルはSampleですwar,では解凍したディレクトリがSampleディレクトリであり,メモリに動的に作成されたContextパスが/Sumpleである.開発段階ではこのようなデフォルトの動作は許容できますが、正式な導入の場合、アプリケーションのContextパスを変更してニーズに適応する必要があります.
ユーザーにドメイン名だけを入力してSampleアプリケーションにアクセスさせるには、TomcatのContext設定を変更する必要があります.具体的にContextパスを設定方法は、{TOMCAT_HOME}/conf/serverを修正する2つある.xmlファイル、もう1つはContextクリップファイルをwebappsディレクトリの下に配置することです.ここでは最初の方法を紹介します.
任意のテキストエディタを使用してserverを開きます.xmlファイル、ノードの下にノードを追加し、path、docBase、debug、reloadableプロパティを設定します.
一般的に、WEBアプリケーションをWAR形式にパッケージ化し、TOMCATのWEBAPPディレクトリにコピーしてパブリッシュします.通常、TOMCATはWARファイルを自動的に解凍して対応するディレクトリを生成し、メモリにこのWEBアプリケーションに対応するCONTEXTパスを動的に作成します.例えばWARファイルはSampleですwar,では解凍したディレクトリがSampleディレクトリであり,メモリに動的に作成されたContextパスが/Sumpleである.開発段階ではこのようなデフォルトの動作は許容できますが、正式な導入の場合、アプリケーションのContextパスを変更してニーズに適応する必要があります.
ユーザーにドメイン名だけを入力してSampleアプリケーションにアクセスさせるには、TomcatのContext設定を変更する必要があります.具体的にContextパスを設定方法は、{TOMCAT_HOME}/conf/serverを修正する2つある.xmlファイル、もう1つはContextクリップファイルをwebappsディレクトリの下に配置することです.ここでは最初の方法を紹介します.
任意のテキストエディタを使用してserverを開きます.xmlファイル、
<?xml version="1.0" encoding="UTF-8"?>
<Server>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
<Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/>
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
<GlobalNamingResources>
<Environment
name="simpleValue"
type="java.lang.Integer"
value="30"/>
<Resource
auth="Container"
description="User database that can be updated and saved"
name="UserDatabase"
type="org.apache.catalina.UserDatabase"
pathname="conf/tomcat-users.xml"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"/>
</GlobalNamingResources>
<Service
name="Catalina">
<Connector
port="8080"
redirectPort="8443"
minSpareThreads="25"
connectionTimeout="20000"
maxSpareThreads="75"
maxThreads="150"
maxHttpHeaderSize="8192">
</Connector>
<Connector
port="8009"
redirectPort="8443"
protocol="AJP/1.3">
</Connector>
<Engine
defaultHost="localhost"
name="Catalina">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
<Host
appBase="webapps"
name="localhost">
<Context
path="/samples">
<WatchedResource>WEB-INF/web.xml</WatchedResource>
</Context>
<Context
path="/profiler">
<WatchedResource>WEB-INF/web.xml</WatchedResource>
</Context>
<Context
path="/flex">
<WatchedResource>WEB-INF/web.xml</WatchedResource>
</Context>
<!-- /Samples -->
<Context path="" docBase="/samples" debug="0" reloadable="true">
</Context>
</Host>
</Engine>
</Service>
</Server>