在Tomcat中,我们可以通过下面的方法来设置虚拟目录:
1.单个应用设置:
tomcat文件夹里的conf文件下的server.xml文件
在<Host>和</host>之间加上
<Context path="/site" docBase="d:/website" reloadable="true" debug="0">
</Context>
参数:path 表示在浏览器中输入http://localhost:8080/website
docBase表示你的程序包的物理绝对路径,默认的绝对路径是$Tomcat_Home$/webapps
这样设定了之后会在$tomcat_home$/conf/catalina/localhost目录下生成一个site.xml文件,此文件的内容就是刚才设置的内容。
2.通过前面我们知道了在$tomcat_home$/conf/catalina/localhost目录下会生成相应的配置文件,因此我们可以直接在$tomcat_home$/conf/catalina/localhost目录下写配置文件文件名任意取,最好是跟你的web应用相同便于管理,如site.xml内容同上
<Context path="/site" docBase="d:/site" reloadable="true" debug="0">
</Context>
3.更改整个根目录:
找到<Host name="localhost" debug="0" appBase="webapps"
unpackWARs="true" autoDeploy="true">
将appBase的设置成期望的路径(绝对路径)
///
在tomcat文件夹的conf/catalina/localhost(对于Tomcat6版本及其以上,需要自己创建catalina和localhost这两个文件夹)
增加project .xml文件(该文件名的project要和下面的“path=“/xxx"”的xxx相同)
文件内容:
<Context path="/project" reloadable="true" docBase="E:/javastudio/oob" workDir="E:/javastudio/oob/work" />
docBase是项目文件夹的web-inf文件夹的上一层目录
workDir是指Tomcat解析Jsp转换为Java文件,并编译为class存放的文件夹,设置在项目文件夹里面,可以避免移植到其他地方首次读取jsp文件需要重新解析 。一般格式:项目文件夹/work
reloadable是指可以重新加载,一般设置为true,方便使用,不需要经常重启Tomcat。
以后启动Tomcat,在浏览器输入[url]http://localhost:8080/project[/url]就能访问该项目的welcome文件。
***************
为什么要不修改server.xml呢?在Tomcat6的doc帮助文档中,官方是不提倡修改server.xml来添加虚拟目录的!
而我认为,以上使用的方法,非常方便于项目的移植,移植后,只有修改docBase和workDir的值就行了,甚至可以去掉workDir这个属性!
<Context path="/ucshop" reloadable="true" docBase="G:/UCshop/ucshop" workDir="G:/UCshop/ucshop/work">
<Resource name="jdbc/ucshop" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=ucshop"
username="sa"
password="sa"
maxIdle="5"
maxWait="5000"
maxActive="10"/>
</Context>
1.单个应用设置:
tomcat文件夹里的conf文件下的server.xml文件
在<Host>和</host>之间加上
<Context path="/site" docBase="d:/website" reloadable="true" debug="0">
</Context>
参数:path 表示在浏览器中输入http://localhost:8080/website
docBase表示你的程序包的物理绝对路径,默认的绝对路径是$Tomcat_Home$/webapps
这样设定了之后会在$tomcat_home$/conf/catalina/localhost目录下生成一个site.xml文件,此文件的内容就是刚才设置的内容。
2.通过前面我们知道了在$tomcat_home$/conf/catalina/localhost目录下会生成相应的配置文件,因此我们可以直接在$tomcat_home$/conf/catalina/localhost目录下写配置文件文件名任意取,最好是跟你的web应用相同便于管理,如site.xml内容同上
<Context path="/site" docBase="d:/site" reloadable="true" debug="0">
</Context>
3.更改整个根目录:
找到<Host name="localhost" debug="0" appBase="webapps"
unpackWARs="true" autoDeploy="true">
将appBase的设置成期望的路径(绝对路径)
///
在tomcat文件夹的conf/catalina/localhost(对于Tomcat6版本及其以上,需要自己创建catalina和localhost这两个文件夹)
增加project .xml文件(该文件名的project要和下面的“path=“/xxx"”的xxx相同)
文件内容:
<Context path="/project" reloadable="true" docBase="E:/javastudio/oob" workDir="E:/javastudio/oob/work" />
docBase是项目文件夹的web-inf文件夹的上一层目录
workDir是指Tomcat解析Jsp转换为Java文件,并编译为class存放的文件夹,设置在项目文件夹里面,可以避免移植到其他地方首次读取jsp文件需要重新解析 。一般格式:项目文件夹/work
reloadable是指可以重新加载,一般设置为true,方便使用,不需要经常重启Tomcat。
以后启动Tomcat,在浏览器输入[url]http://localhost:8080/project[/url]就能访问该项目的welcome文件。
***************
为什么要不修改server.xml呢?在Tomcat6的doc帮助文档中,官方是不提倡修改server.xml来添加虚拟目录的!
而我认为,以上使用的方法,非常方便于项目的移植,移植后,只有修改docBase和workDir的值就行了,甚至可以去掉workDir这个属性!
<Context path="/ucshop" reloadable="true" docBase="G:/UCshop/ucshop" workDir="G:/UCshop/ucshop/work">
<Resource name="jdbc/ucshop" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=ucshop"
username="sa"
password="sa"
maxIdle="5"
maxWait="5000"
maxActive="10"/>
</Context>