- Host Name:
Exactly one of the Hosts associated with each Engine MUST have a name matching the
defaultHost
attribute of that Engine.- Host Name Alias:
<Host name="www.mycompany.com" ...>
...
<Alias>mycompany.com</Alias>
...
</Host>
In order for this strategy to be effective, all of the network names involved must be registered
- host appBase:
You may specify an absolute pathname for this directory, or a pathname that is relative to the
$CATALINA_BASE
directory.appBase="webapps" is the default value.
- host context:
- context docBase:
appBase
directory of the
owning Host.If a symbolic link is used for docBase then changes to the symbolic link will only be effective after a Tomcat restart or by undeploying and redeploying the conext. A context reload is not sufficient.
Do not choose a docBase that starts with your Host's appBase string. The default appBase is "webapps" so do not choose a docBase like "webapps-foo." Doing so will lead to deployment errors: see Bugzilla for details.
The value of this field must not be set when the Context is configured using a
META-INF/context.xml
file as it will be
inferred by the automatic deployment process.- context path:
All of the context paths within a particular Host must be unique. If you specify a context path of an empty string (""), you are defining the default web application for this Host, which will process all requests not assigned to other Contexts.
問題: 為什么我可以使用http://www.mysite.com:8080/ 去訪問Test Project, 而使用http://localhost:8080/ 卻不能,需使用http://localhost:8080/Test_Project訪問
C:\WINDOWS\system32\drivers\etc\hosts
127.0.0.1 localhost
127.0.0.1 www.mysite.com
這個問題是“直接使用http://localhost 或 http://www.mysite.com/ 訪問開發的項目” , 為了達到這一目的,有以下途徑:
途徑1:
設置 context path=“” ,如
<Context docBase="Test Project" path="" reloadable="true" crossContext="true" source="org.eclipse.jst.j2ee.server:Test Project"/></Host>
但是這有一個問題:
使用eclipse servers 新建一個server,產生配置文件 D:\WorkSpace\MY_DEV\Servers\Tomcat v5.5 Server @localhost-config\server.xml, 修改該自動生成的文件
啟動server后,這些配置文件將被發布到tomcat webapps的同級目錄conf下,而且在發布時server.xml的內容為eclipse自動生成的內容,用戶的修改被拋棄。所以為了達到“直接使用http://localhost 或 http://www.mysite.com/ 訪問開發的項目” 這一目標,有兩種方法:
方法一:
直接修改tomcat conf目錄下的server.xml文件。
方法二:
在eclipse中,在自動生成的server.xml基礎上添加一個host
<Host appBase="webapps" autoDeploy="true" name="www.mysite.com" unpackWARs="true">
<Context docBase="Test Project" path="" reloadable="true" source="org.eclipse.jst.j2ee.server:Test Project"/>
</Host>
該修改在"關閉,再啟動"(直接重啟不行)server后,能被更新到tomcat conf下面的server.xml
在項目發布中,最終生效的是tomcat conf下的server.xml
途徑2:來自http://blog.csdn.net/miqi770/archive/2008/02/20/2109805.aspx,未嘗試
使用eclipse發布xm到tomcat
把ROOT目錄刪掉,把xm重命名ROOT
使用http://localhost時,可以直接訪問自己開發的項目