欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

TomCat 多虛擬站點(diǎn)配置

系統(tǒng) 1919 0
在網(wǎng)絡(luò)上看了許久,沒有一個(gè)真正可以解決TomCat多虛擬站點(diǎn)的配置問題的,經(jīng)過試驗(yàn)和參考官方網(wǎng)站資料,終于解決了這個(gè)問題.
  參考資料:Apache Tomcat文檔 http://tomcat.apache.org/tomcat-5.0-doc/config/host.html

  在文中有這么一段話:
  One or more Host elements are nested inside an Engine element. Inside the Host element, you can nest Context elements for the web applications associated with this virtual host. Exactly one of the Hosts associated with each Engine MUST have a name matching the defaultHost attribute of that Engine.

  譯文:Engine元素中需要一個(gè)或多個(gè)Host元素,在Host元素里面,你必需有Context元素讓網(wǎng)站應(yīng)用程序與虛擬主機(jī)連接上,嚴(yán)密地說,每一個(gè)主機(jī)所關(guān)聯(lián)的引擎必須有一個(gè)名字跟那個(gè)引擎默認(rèn)的主機(jī)屬性匹配 .
  可知,在Engine元素里面可以有多個(gè)Host,那么說,可以有在一個(gè)Engine里面設(shè)置多個(gè)服務(wù)器了,這正是我們需要的.每個(gè)Host元素里面要有一個(gè)Context元素.
  根據(jù)conf\server.xml里面的說明和范例,我樣可以編寫出下面一個(gè)配置文件:

??1 <!-- ?Example?Server?Configuration?File? -->
??2 <!-- ?Note?that?component?elements?are?nested?corresponding?to?their
??3 ?????parent-child?relationships?with?each?other? -->
??4
??5 <!-- ?A?"Server"?is?a?singleton?element?that?represents?the?entire?JVM,
??6 ?????which?may?contain?one?or?more?"Service"?instances.??The?Server
??7 ?????listens?for?a?shutdown?command?on?the?indicated?port.
??8
??9 ?????Note:??A?"Server"?is?not?itself?a?"Container",?so?you?may?not
?10 ?????define?subcomponents?such?as?"Valves"?or?"Loggers"?at?this?level.
?11 ? -->
?12
?13 < Server? port ="8005" ?shutdown ="SHUTDOWN" >
?14
?15 ?? <!-- ?Comment?these?entries?out?to?disable?JMX?MBeans?support?used?for?the
?16 ???????administration?web?application? -->
?17 ?? < Listener? className ="org.apache.catalina.core.AprLifecycleListener" ? />
?18 ?? < Listener? className ="org.apache.catalina.mbeans.ServerLifecycleListener" ? />
?19 ?? < Listener? className ="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" ? />
?20 ?? < Listener? className ="org.apache.catalina.storeconfig.StoreConfigLifecycleListener" />
?21
?22 ?? <!-- ?Global?JNDI?resources? -->
?23 ?? < GlobalNamingResources >
?24
?25 ???? <!-- ?Test?entry?for?demonstration?purposes? -->
?26 ???? < Environment? name ="simpleValue" ?type ="java.lang.Integer" ?value ="30" />
?27
?28 ???? <!-- ?Editable?user?database?that?can?also?be?used?by
?29 ?????????UserDatabaseRealm?to?authenticate?users? -->
?30 ???? < Resource? name ="UserDatabase" ?auth ="Container"
?31 ??????????????type ="org.apache.catalina.UserDatabase"
?32 ???????description ="User?database?that?can?be?updated?and?saved"
?33 ???????????factory ="org.apache.catalina.users.MemoryUserDatabaseFactory"
?34 ??????????pathname ="conf/tomcat-users.xml" ? />
?35
?36 ?? </ GlobalNamingResources >
?37
?38 ?? <!-- ?A?"Service"?is?a?collection?of?one?or?more?"Connectors"?that?share
?39 ???????a?single?"Container"?(and?therefore?the?web?applications?visible
?40 ???????within?that?Container).??Normally,?that?Container?is?an?"Engine",
?41 ???????but?this?is?not?required.
?42
?43 ???????Note:??A?"Service"?is?not?itself?a?"Container",?so?you?may?not
?44 ???????define?subcomponents?such?as?"Valves"?or?"Loggers"?at?this?level.
?45 ??? -->
?46
?47 ?? <!-- ?Define?the?Tomcat?Stand-Alone?Service? -->
?48 ?? < Service? name ="Catalina" >
?49
?50 ???? <!-- ?A?"Connector"?represents?an?endpoint?by?which?requests?are?received
?51 ?????????and?responses?are?returned.??Each?Connector?passes?requests?on?to?the
?52 ?????????associated?"Container"?(normally?an?Engine)?for?processing.
?53
?54 ?????????By?default,?a?non-SSL?HTTP/1.1?Connector?is?established?on?port?8080.
?55 ?????????You?can?also?enable?an?SSL?HTTP/1.1?Connector?on?port?8443?by
?56 ?????????following?the?instructions?below?and?uncommenting?the?second?Connector
?57 ?????????entry.??SSL?support?requires?the?following?steps?(see?the?SSL?Config
?58 ?????????HOWTO?in?the?Tomcat?5?documentation?bundle?for?more?detailed
?59 ?????????instructions):
?60 ?????????*?If?your?JDK?version?1.3?or?prior,?download?and?install?JSSE?1.0.2?or
?61 ???????????later,?and?put?the?JAR?files?into?"$JAVA_HOME/jre/lib/ext".
?62 ?????????*?Execute:
?63 ?????????????%JAVA_HOME%\bin\keytool?-genkey?-alias?tomcat?-keyalg?RSA?(Windows)
?64 ?????????????$JAVA_HOME/bin/keytool?-genkey?-alias?tomcat?-keyalg?RSA??(Unix)
?65 ???????????with?a?password?value?of?"changeit"?for?both?the?certificate?and
?66 ???????????the?keystore?itself.
?67
?68 ?????????By?default,?DNS?lookups?are?enabled?when?a?web?application?calls
?69 ?????????request.getRemoteHost().??This?can?have?an?adverse?impact?on
?70 ?????????performance,?so?you?can?disable?it?by?setting?the
?71 ?????????"enableLookups"?attribute?to?"false".??When?DNS?lookups?are?disabled,
?72 ?????????request.getRemoteHost()?will?return?the?String?version?of?the
?73 ?????????IP?address?of?the?remote?client.
?74 ???? -->
?75
?76 ???? <!-- ?Define?a?non-SSL?HTTP/1.1?Connector?on?port?8080? -->
?77 ???? < Connector
?78 port ="80" ???????????????maxHttpHeaderSize ="8192"
?79 ???????????????maxThreads ="150" ?minSpareThreads ="25" ?maxSpareThreads ="75"
?80 ???????????????enableLookups ="false" ?redirectPort ="8443" ?acceptCount ="100"
?81 ???????????????connectionTimeout ="20000" ?disableUploadTimeout ="true" ??URIEncoding ="GB2312" />
?82 ???? <!-- ?Note?:?To?disable?connection?timeouts,?set?connectionTimeout?value
?83 ?????to?0? -->
?84
?85 ???? <!-- ?Note?:?To?use?gzip?compression?you?could?set?the?following?properties?:
?86
?87 ???????????????compression="on"
?88 ???????????????compressionMinSize="2048"
?89 ???????????????noCompressionUserAgents="gozilla,?traviata"
?90 ???????????????compressableMimeType="text/html,text/xml"
?91 ???? -->
?92
?93 ???? <!-- ?Define?a?SSL?HTTP/1.1?Connector?on?port?8443? -->
?94 ???? <!--
?95 ????<Connector?port="8443"?maxHttpHeaderSize="8192"
?96 ???????????????maxThreads="150"?minSpareThreads="25"?maxSpareThreads="75"
?97 ???????????????enableLookups="false"?disableUploadTimeout="true"
?98 ???????????????acceptCount="100"?scheme="https"?secure="true"
?99 ???????????????clientAuth="false"?sslProtocol="TLS"?/>
100 ???? -->
101
102 ???? <!-- ?Define?an?AJP?1.3?Connector?on?port?8009? -->
103 ???? < Connector? port ="8009"
104 ???????????????enableLookups ="false" ?redirectPort ="8443" ?protocol ="AJP/1.3" ? />
105
106 ???? <!-- ?Define?a?Proxied?HTTP/1.1?Connector?on?port?8082? -->
107 ???? <!-- ?See?proxy?documentation?for?more?information?about?using?this.? -->
108 ???? <!--
109 ????<Connector?port="8082"
110 ???????????????maxThreads="150"?minSpareThreads="25"?maxSpareThreads="75"
111 ???????????????enableLookups="false"?acceptCount="100"?connectionTimeout="20000"
112 ???????????????proxyPort="80"?disableUploadTimeout="true"?/>
113 ???? -->
114
115 ???? <!-- ?An?Engine?represents?the?entry?point?(within?Catalina)?that?processes
116 ?????????every?request.??The?Engine?implementation?for?Tomcat?stand?alone
117 ?????????analyzes?the?HTTP?headers?included?with?the?request,?and?passes?them
118 ?????????on?to?the?appropriate?Host?(virtual?host).? -->
119
120 ???? <!-- ?You?should?set?jvmRoute?to?support?load-balancing?via?AJP?ie?:
121 ????<Engine?name="Standalone"?defaultHost="localhost"?jvmRoute="jvm1">
122 ???? -->
123
124 ???? <!-- ?Define?the?top?level?container?in?our?container?hierarchy? -->
125 ???? < Engine? name ="Catalina" ?defaultHost ="ycoe.vicp.net" >
126
127 ?????? <!-- ?The?request?dumper?valve?dumps?useful?debugging?information?about
128 ???????????the?request?headers?and?cookies?that?were?received,?and?the?response
129 ???????????headers?and?cookies?that?were?sent,?for?all?requests?received?by
130 ???????????this?instance?of?Tomcat.??If?you?care?only?about?requests?to?a
131 ???????????particular?virtual?host,?or?a?particular?application,?nest?this
132 ???????????element?inside?the?corresponding?<Host>?or?<Context>?entry?instead.
133
134 ???????????For?a?similar?mechanism?that?is?portable?to?all?Servlet?2.4
135 ???????????containers,?check?out?the?"RequestDumperFilter"?Filter?in?the
136 ???????????example?application?(the?source?for?this?filter?may?be?found?in
137 ???????????"$CATALINA_HOME/webapps/examples/WEB-INF/classes/filters").
138
139 ???????????Request?dumping?is?disabled?by?default.??Uncomment?the?following
140 ???????????element?to?enable?it.? -->
141 ?????? <!--
142 ??????<Valve?className="org.apache.catalina.valves.RequestDumperValve"/>
143 ?????? -->
144
145 ?????? <!-- ?Because?this?Realm?is?here,?an?instance?will?be?shared?globally? -->
146
147 ?????? <!-- ?This?Realm?uses?the?UserDatabase?configured?in?the?global?JNDI
148 ???????????resources?under?the?key?"UserDatabase".??Any?edits
149 ???????????that?are?performed?against?this?UserDatabase?are?immediately
150 ???????????available?for?use?by?the?Realm.?? -->
151 ?????? < Realm? className ="org.apache.catalina.realm.UserDatabaseRealm"
152 ?????????????resourceName ="UserDatabase" />
153
154 ?????? <!-- ?Comment?out?the?old?realm?but?leave?here?for?now?in?case?we
155 ???????????need?to?go?back?quickly? -->
156 ?????? <!--
157 ??????<Realm?className="org.apache.catalina.realm.MemoryRealm"?/>
158 ?????? -->
159
160 ?????? <!-- ?Replace?the?above?Realm?with?one?of?the?following?to?get?a?Realm
161 ???????????stored?in?a?database?and?accessed?via?JDBC? -->
162
163 ?????? <!--
164 ??????<Realm??className="org.apache.catalina.realm.JDBCRealm"
165 ?????????????driverName="org.gjt.mm.mysql.Driver"
166 ??????????connectionURL="jdbc:mysql://localhost/authority"
167 ?????????connectionName="test"?connectionPassword="test"
168 ??????????????userTable="users"?userNameCol="user_name"?userCredCol="user_pass"
169 ??????????userRoleTable="user_roles"?roleNameCol="role_name"?/>
170 ?????? -->
171
172 ?????? <!--
173 ??????<Realm??className="org.apache.catalina.realm.JDBCRealm"
174 ?????????????driverName="oracle.jdbc.driver.OracleDriver"
175 ??????????connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL"
176 ?????????connectionName="scott"?connectionPassword="tiger"
177 ??????????????userTable="users"?userNameCol="user_name"?userCredCol="user_pass"
178 ??????????userRoleTable="user_roles"?roleNameCol="role_name"?/>
179 ?????? -->
180
181 ?????? <!--
182 ??????<Realm??className="org.apache.catalina.realm.JDBCRealm"
183 ?????????????driverName="sun.jdbc.odbc.JdbcOdbcDriver"
184 ??????????connectionURL="jdbc:odbc:CATALINA"
185 ??????????????userTable="users"?userNameCol="user_name"?userCredCol="user_pass"
186 ??????????userRoleTable="user_roles"?roleNameCol="role_name"?/>
187 ?????? -->
188
189 ?????? <!-- ?Define?the?default?virtual?host
190 ???????????Note:?XML?Schema?validation?will?not?work?with?Xerces?2.2.
191 ??????? -->
192 ?????? < Host? name ="ycoe.vicp.net" ?appBase ="webapps"
193 ???????unpackWARs ="true" ?autoDeploy ="true"
194 ???????xmlValidation ="false" ?xmlNamespaceAware ="false" >
195
196 ???????? <!-- ?Defines?a?cluster?for?this?node,
197 ?????????????By?defining?this?element,?means?that?every?manager?will?be?changed.
198 ?????????????So?when?running?a?cluster,?only?make?sure?that?you?have?webapps?in?there
199 ?????????????that?need?to?be?clustered?and?remove?the?other?ones.
200 ?????????????A?cluster?has?the?following?parameters:
201
202 ?????????????className?=?the?fully?qualified?name?of?the?cluster?class
203
204 ?????????????name?=?a?descriptive?name?for?your?cluster,?can?be?anything
205
206 ?????????????mcastAddr?=?the?multicast?address,?has?to?be?the?same?for?all?the?nodes
207
208 ?????????????mcastPort?=?the?multicast?port,?has?to?be?the?same?for?all?the?nodes
209
210 ?????????????mcastBindAddr?=?bind?the?multicast?socket?to?a?specific?address
211
212 ?????????????mcastTTL?=?the?multicast?TTL?if?you?want?to?limit?your?broadcast
213
214 ?????????????mcastSoTimeout?=?the?multicast?readtimeout
215
216 ?????????????mcastFrequency?=?the?number?of?milliseconds?in?between?sending?a?"I'm?alive"?heartbeat
217
218 ?????????????mcastDropTime?=?the?number?a?milliseconds?before?a?node?is?considered?"dead"?if?no?heartbeat?is?received
219
220 ?????????????tcpThreadCount?=?the?number?of?threads?to?handle?incoming?replication?requests,?optimal?would?be?the?same?
amount?of?threads?as?nodes
221
222 ?????????????tcpListenAddress?=?the?listen?address?(bind?address)?for?TCP?cluster?request?on?this?host,
223 ????????????????????????????????in?case?of?multiple?ethernet?cards.
224 ????????????????????????????????auto?means?that?address?becomes
225 ????????????????????????????????InetAddress.getLocalHost().getHostAddress()
226
227 ?????????????tcpListenPort?=?the?tcp?listen?port
228
229 ?????????????tcpSelectorTimeout?=?the?timeout?(ms)?for?the?Selector.select()?method?in?case?the?OS
230 ??????????????????????????????????has?a?wakup?bug?in?java.nio.?Set?to?0?for?no?timeout
231
232 ?????????????printToScreen?=?true?means?that?managers?will?also?print?to?std.out
233
234 ?????????????expireSessionsOnShutdown?=?true?means?that
235
236 ?????????????useDirtyFlag?=?true?means?that?we?only?replicate?a?session?after?setAttribute,removeAttribute?has?been?called.
237 ????????????????????????????false?means?to?replicate?the?session?after?each?request.
238 ????????????????????????????false?means?that?replication?would?work?for?the?following?piece?of?code:?(only?for?SimpleTcpReplicationManager)
239 ????????????????????????????<%
240 ????????????????????????????HashMap?map?=?(HashMap)session.getAttribute("map");
241 ????????????????????????????map.put("key","value");
242 ????????????????????????????%>
243 ?????????????replicationMode?=?can?be?either?'pooled',?'synchronous'?or?'asynchronous'.
244 ???????????????????????????????*?Pooled?means?that?the?replication?happens?using?several?sockets?in?a?synchronous?way.?Ie,?
the?data?gets?replicated,?then?the?request?return.?This?is?the?same?as?the?'synchronous'?setting?except?it?uses?a?pool?of?sockets,?
hence?it?is?multithreaded.?This?is?the?fastest?and?safest?configuration.?To?use?this,?also?increase?the?nr?of?tcp?threads?
that?you?have?dealing?with?replication.
245 ???????????????????????????????*?Synchronous?means?that?the?thread?that?executes?the?request,?is?also?the
246 ???????????????????????????????thread?the?replicates?the?data?to?the?other?nodes,?and?will?not?return?until?all
247 ???????????????????????????????nodes?have?received?the?information.
248 ???????????????????????????????*?Asynchronous?means?that?there?is?a?specific?'sender'?thread?for?each?cluster?node,
249 ???????????????????????????????so?the?request?thread?will?queue?the?replication?request?into?a?"smart"?queue,
250 ???????????????????????????????and?then?return?to?the?client.
251 ???????????????????????????????The?"smart"?queue?is?a?queue?where?when?a?session?is?added?to?the?queue,?and?the?same?session
252 ???????????????????????????????already?exists?in?the?queue?from?a?previous?request,?that?session?will?be?replaced
253 ???????????????????????????????in?the?queue?instead?of?replicating?two?requests.?This?almost?never?happens,?unless?there?is?a
254 ???????????????????????????????large?network?delay.
255 ???????? -->
256 ???????? <!--
257 ????????????When?configuring?for?clustering,?you?also?add?in?a?valve?to?catch?all?the?requests
258 ????????????coming?in,?at?the?end?of?the?request,?the?session?may?or?may?not?be?replicated.
259 ????????????A?session?is?replicated?if?and?only?if?all?the?conditions?are?met:
260 ????????????1.?useDirtyFlag?is?true?or?setAttribute?or?removeAttribute?has?been?called?AND
261 ????????????2.?a?session?exists?(has?been?created)
262 ????????????3.?the?request?is?not?trapped?by?the?"filter"?attribute
263
264 ????????????The?filter?attribute?is?to?filter?out?requests?that?could?not?modify?the?session,
265 ????????????hence?we?don't?replicate?the?session?after?the?end?of?this?request.
266 ????????????The?filter?is?negative,?ie,?anything?you?put?in?the?filter,?you?mean?to?filter?out,
267 ????????????ie,?no?replication?will?be?done?on?requests?that?match?one?of?the?filters.
268 ????????????The?filter?attribute?is?delimited?by?;,?so?you?can't?escape?out?;?even?if?you?wanted?to.
269
270 ????????????filter=".*\.gif;.*\.js;"?means?that?we?will?not?replicate?the?session?after?requests?with?the?URI
271 ????????????ending?with?.gif?and?.js?are?intercepted.
272
273 ????????????The?deployer?element?can?be?used?to?deploy?apps?cluster?wide.
274 ????????????Currently?the?deployment?only?deploys/undeploys?to?working?members?in?the?cluster
275 ????????????so?no?WARs?are?copied?upons?startup?of?a?broken?node.
276 ????????????The?deployer?watches?a?directory?(watchDir)?for?WAR?files?when?watchEnabled="true"
277 ????????????When?a?new?war?file?is?added?the?war?gets?deployed?to?the?local?instance,
278 ????????????and?then?deployed?to?the?other?instances?in?the?cluster.
279 ????????????When?a?war?file?is?deleted?from?the?watchDir?the?war?is?undeployed?locally
280 ????????????and?cluster?wide
281 ???????? -->
282
283 ???????? <!--
284 ????????<Cluster?className="org.apache.catalina.cluster.tcp.SimpleTcpCluster"
285 ?????????????????managerClassName="org.apache.catalina.cluster.session.DeltaManager"
286 ?????????????????expireSessionsOnShutdown="false"
287 ?????????????????useDirtyFlag="true"
288 ?????????????????notifyListenersOnReplication="true">
289
290 ????????????<Membership
291 ????????????????className="org.apache.catalina.cluster.mcast.McastService"
292 ????????????????mcastAddr="228.0.0.4"
293 ????????????????mcastPort="45564"
294 ????????????????mcastFrequency="500"
295 ????????????????mcastDropTime="3000"/>
296
297 ????????????<Receiver
298 ????????????????className="org.apache.catalina.cluster.tcp.ReplicationListener"
299 ????????????????tcpListenAddress="auto"
300 ????????????????tcpListenPort="4001"
301 ????????????????tcpSelectorTimeout="100"
302 ????????????????tcpThreadCount="6"/>
303
304 ????????????<Sender
305 ????????????????className="org.apache.catalina.cluster.tcp.ReplicationTransmitter"
306 ????????????????replicationMode="pooled"
307 ????????????????ackTimeout="15000"/>
308
309 ????????????<Valve?className="org.apache.catalina.cluster.tcp.ReplicationValve"
310 ???????????????????filter=".*\.gif;.*\.js;.*\.jpg;.*\.htm;.*\.html;.*\.txt;"/>
311
312 ????????????<Deployer?className="org.apache.catalina.cluster.deploy.FarmWarDeployer"
313 ??????????????????????tempDir="/tmp/war-temp/"
314 ??????????????????????deployDir="/tmp/war-deploy/"
315 ??????????????????????watchDir="/tmp/war-listen/"
316 ??????????????????????watchEnabled="false"/>
317 ????????</Cluster>
318 ???????? -->
319
320
321
322 ???????? <!-- ?Normally,?users?must?authenticate?themselves?to?each?web?app
323 ?????????????individually.??Uncomment?the?following?entry?if?you?would?like
324 ?????????????a?user?to?be?authenticated?the?first?time?they?encounter?a
325 ?????????????resource?protected?by?a?security?constraint,?and?then?have?that
326 ?????????????user?identity?maintained?across?*all*?web?applications?contained
327 ?????????????in?this?virtual?host.? -->
328 ???????? <!--
329 ????????<Valve?className="org.apache.catalina.authenticator.SingleSignOn"?/>
330 ???????? -->
331
332 ???????? <!-- ?Access?log?processes?all?requests?for?this?virtual?host.??By
333 ?????????????default,?log?files?are?created?in?the?"logs"?directory?relative?to
334 ?????????????$CATALINA_HOME.??If?you?wish,?you?can?specify?a?different
335 ?????????????directory?with?the?"directory"?attribute.??Specify?either?a?relative
336 ?????????????(to?$CATALINA_HOME)?or?absolute?path?to?the?desired?directory.
337 ???????? -->
338 ???????? <!--
339 ????????<Valve?className="org.apache.catalina.valves.AccessLogValve"
340 ?????????????????directory="logs"??prefix="localhost_access_log."?suffix=".txt"
341 ?????????????????pattern="common"?resolveHosts="false"/>
342 ???????? -->
343
344 ???????? <!-- ?Access?log?processes?all?requests?for?this?virtual?host.??By
345 ?????????????default,?log?files?are?created?in?the?"logs"?directory?relative?to
346 ?????????????$CATALINA_HOME.??If?you?wish,?you?can?specify?a?different
347 ?????????????directory?with?the?"directory"?attribute.??Specify?either?a?relative
348 ?????????????(to?$CATALINA_HOME)?or?absolute?path?to?the?desired?directory.
349 ?????????????This?access?log?implementation?is?optimized?for?maximum?performance,
350 ?????????????but?is?hardcoded?to?support?only?the?"common"?and?"combined"?patterns.
351 ???????? -->
352 ???????? <!--
353 ????????<Valve?className="org.apache.catalina.valves.FastCommonAccessLogValve"
354 ?????????????????directory="logs"??prefix="localhost_access_log."?suffix=".txt"
355 ?????????????????pattern="common"?resolveHosts="false"/>
356 ???????? -->
357 ???? < Context? docBase ="D:\WORKS\EShop\EWebShop" ?path ="/" ?reloadable ="true" ?
??????????????? workDir
="D:\WORKS\EShop\Tomcat\work\EWebShop" >
358 ???? </ Context >
359 ?????? </ Host > ????
360 < Host? name ="yvor.vicp.net" ?appBase ="webapps" unpackWARs ="true" ?autoDeploy ="true" xmlValidation ="false" ?
??????????????? xmlNamespaceAware
="false" >
361 ???? < Context? docBase ="D:\WORKS\YCOE\ycoe" ?path ="/" ?reloadable ="true" ?workDir ="D:\WORKS\YCOE\Tomcat\work\ycoe" >
362 ???? </ Context >
363 ?????? </ Host >
364 ???? </ Engine >
365 ?? </ Service >
366 </ Server >
367
368

  可以看到,這里修改了
  81行修改了兩個(gè)參數(shù)值: < Connector port ="80" maxHttpHeaderSize ="8192"
? ???????????????maxThreads ="150" ?minSpareThreads ="25" ?maxSpareThreads ="75"
? ???????????????enableLookups ="false" ?redirectPort ="8443" ?acceptCount ="100"
? ???????????????connectionTimeout ="20000" ?disableUploadTimeout ="true" ??URIEncoding ="GB2312" />
???????   修改port是修改Tomcat的服務(wù)端口,默認(rèn)為8080,URIEncoding改為GB2312是為了使用中文路徑
    但不建議使用.

  125行: < Engine? name ="Catalina" ?defaultHost ="ycoe.vicp.net" >

??????? 192行: < Host? name ="ycoe.vicp.net" ?appBase ="webapps" unpackWARs ="true" ?autoDeploy ="true" xmlValidation ="false" ?xmlNamespaceAware ="false" >

然后再添加360行開始的<Host>元素: < Host? name ="yvor.vicp.net" ?appBase ="webapps" unpackWARs ="true" ?autoDeploy ="true"
??????? xmlValidation ="false" ? xmlNamespaceAware ="false" >
???? < Context? docBase ="D:\WORKS\YCOE\ycoe" ? path ="/" ?reloadable ="true" ?
??????????? workDir
="D:\WORKS\YCOE\Tomcat\work\ycoe" > </ Context >
</ Host >
  這里是設(shè)置我們的第二個(gè)虛擬網(wǎng)站的域名.
  注:<Context/>里面的內(nèi)容并不是我們實(shí)際應(yīng)用的,我們可以通過另一種比較方便而且容易修改的方式來設(shè)置這些參數(shù).下面我們來做這方面的配置:
  1.在%CATALINA_HOME %\conf\Catalina目錄下創(chuàng)建ycoe.vicp.net和yvor.vicp.net兩個(gè)文件夾.
  2.在這兩個(gè)文件夾里面創(chuàng)建ROOT.xml文件(要以ROOT.xml為名稱,否則雖然不會(huì)出錯(cuò),但不能用 http://ycoe.vicp.net http://yvor.vicp.net 直接訪問)
  3.ROOT.xml的內(nèi)容如下:
<? xml?version='1.0'?encoding='utf-8' ?>
< Context? docBase ="D:\WORKS\EShop\EWebShop" ?path ="/" ?reloadable ="true" ?
workDir
="D:\WORKS\EShop\Tomcat\work\EWebShop" >
</ Context >

  根據(jù)自己的實(shí)際情況,設(shè)置這里的docBase 和workDir的路徑.docBase是說明文檔的路徑,workDir是網(wǎng)站程序的路徑,如果用相對(duì)路徑,則是在%CATALINA_HOME %\webapp目錄下,path是訪問的路徑

  參考官方文檔:

  • Any XML file in the $CATALINA_HOME/conf/[engine_name]/[host_name] directory is assumed to contain a Context element (and its associated subelements) for a single web application. The docBase attribute of this <Context> element will typically be the absolute pathname to a web application directory, or the absolute pathname of a web application archive (WAR) file (which will not be expanded).
  • Any web application archive file within the application base (appBase) directory that does not have a corresponding directory of the same name (without the ".war" extension) will be automatically expanded, unless the unpackWARs property is set to false . If you redeploy an updated WAR file, be sure to delete the expanded directory when restarting Tomcat, so that the updated WAR file will be re-expanded (note that the auto deployer will automatically take care of this if it is enabled).
  • Any subdirectory within the application base directory that appears to be an unpacked web application (that is, it contains a /WEB-INF/web.xml file) will receive an automatically generated Context element, even if this directory is not mentioned in the conf/server.xml file. This generated Context entry will be configured according to the properties set in any DefaultContext element nested in this Host element. The context path for this deployed Context will be a slash character ("/") followed by the directory name, unless the directory name is ROOT, in which case the context path will be an empty string ("").

      你也可以在這兩個(gè)目錄下創(chuàng)建其它xml的文件

      但是這時(shí)你通過瀏覽器訪問 http://ycoe.vicp.net http://yvor.vicp.net 時(shí)并不能瀏覽到你的網(wǎng)頁,因?yàn)樗堰@些網(wǎng)址解析到廣域網(wǎng)上去了,除非你用域名綁定.
      為了讓局域本機(jī)不把這兩個(gè)網(wǎng)址解析到廣域網(wǎng)上去.我們可以通過以下設(shè)置實(shí)現(xiàn)(Windows XP,其它操作系統(tǒng)沒有試過):
     1.用文本編輯器打開C:\WINDOWS\system32\drivers\etc目錄的hosts文件
     2.在內(nèi)容最后另起一行,添加以下內(nèi)容:
    ??????????? 127.0.0.1?????? ycoe.vicp.net
    ??????????? 127.0.0.1?????? yvor.vicp.net

      可以由上面的注釋部分了解它的作用:

    #?Copyright?(c)?1993-1999?Microsoft?Corp.
    #
    #?This?is?a?sample?HOSTS?file?used?by?Microsoft?TCP/IP?for?Windows.
    #
    #?This?file?contains?the?mappings?of?IP?addresses?to?host?names.?Each
    #?entry?should?be?kept?on?an?individual?line.?The?IP?address?should
    #?be?placed?in?the?first?column?followed?by?the?corresponding?host?name.
    #?The?IP?address?and?the?host?name?should?be?separated?by?at?least?one
    #?space.
    #
    #?Additionally,?comments?(such?as?these)?may?be?inserted?on?individual
    #?lines?or?following?the?machine?name?denoted?by?a?'#'?symbol.
    #
    #?For?example:
    #
    #??????102.54.94.97?????rhino.acme.com??????????#?source?server
    #???????38.25.63.10?????x.acme.com??????????????#?x?client?host

      到這里,全部的配置已經(jīng)完成了.重啟Tomcat,打開 http://ycoe.vicp.net http://yvor.vicp.net 就可以看到預(yù)期的效果了.呵呵

      下載相關(guān)文件 http://files.cnblogs.com/ycoe/Catalina.rar

                        --原創(chuàng)文章,可以隨意復(fù)制發(fā)表,但請(qǐng)注明出處與作者
                                       BY YCOE

  • TomCat 多虛擬站點(diǎn)配置


    更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

    微信掃碼或搜索:z360901061

    微信掃一掃加我為好友

    QQ號(hào)聯(lián)系: 360901061

    您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

    【本文對(duì)您有幫助就好】

    您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

    發(fā)表我的評(píng)論
    最新評(píng)論 總共0條評(píng)論
    主站蜘蛛池模板: 色综合一区 | 国产毛片一级 | 性夜影院爽黄e爽在线观看 苏晓晖个人简介军衔 | 久久精品国产免费 | 午夜视频在线观看免费视频 | 91av久久| 国产欧美日韩精品一区二 | 男人午夜小视频 | 蜜桃av一区二区三区 | 污污的网站在线观看 | 亚洲高清免费视频 | 日日夜夜操操操 | 国产欧美精品一区二区三区 | 最新av在线网址 | 精品麻豆cm视频在线看 | 91精品久久 | 97久久超碰 | 欧美成人激情在线 | 奇米影视亚洲四色8888 | 日韩福利网站 | 国内精品免费一区二区三区 | 正在播放国产精品 | 天天在线| 日韩看片 | 欧美日韩a | 精品av| 日韩一级欧美一级毛片在线 | 蜜桃传媒一区二区亚洲AV | 奇米第四色网站 | 色狠狠婷婷97 | 俄罗斯厕所偷窥视频 | www操com| 欧美一级毛片在线播放 | 亚洲欧美中文日韩在线v日本 | 成人av观看 | 亚洲综合久久伊人热 | 欧美一区二区三区成人 | 日韩精品手机在线 | 免费网站国产 | 久久精品无码一区二区日韩av | 久久国产精品久久久久久久久久 |