感谢我认识的和认识我的人们,thx.
---xingyunpi
最近感觉自己就是个大煤矿,整天那么多繁杂事务,哐哐!!!对啦,我起了个英文名,叫 Sorina Nyco,怎么读还没有想太好,什么意思,也没有想太好,嘿嘿.好啦,记录一下tomcat配置虚拟目录的问题吧.
其实,在做项目的时候,尤其是小的项目,都是在本地机上进行测试,所以,这样的话,就造成了开发环境和运行环境地址访问的差别.一般来说,本地项目都是用这样的地址去测试:localhost/projectname/xxx.jsp ,但是,实际项目上线后,还是要对应相应的域名指定文件去访问,比如,可能是 www.sorina.com.这两者之间的联系,就要用到tomcat配置虚拟目录了.
这个例子,都以myproject工程为例,myproject工程的目录结构如下:
第一种:如果用myeclipse部署的话,会部署到tomcat/webapps下,这种默认状态下这样配置:
步骤一:解析域名:
意思就是说,127.0.0.1对应的访问域名是啥...不知道如何解释.
这一步其实挺简单的(xp系统),在C:\WINDOWS\system32\drivers\etc\hosts文件修改:
127.0.0.1 localhost
127.0.0.1 admin.sorina
步骤二:配置server.xml内容:
在server.xml中,配置host:
在host标签下,增加一个新的标签:
<Host name="admin.sorina" appBase="C:\tomcat-6.0\webapps" unpackWARs="true" autoDeploy="true">
<Logger className="org.apache.catalina.logger.FileLogger" directory="logs" prefix="localhost_log." suffix=".txt" timestamp="true"/>
<Context path="" docBase="\myproject\admin\login" reloadable="true" caseSensitive="false" debug="0"></Context>
</Host>
这样的话,访问 admin.sorina/index.jsp就会访问到对应的admin\login\index.jsp
第二种,可能有人希望,不用tomcat默认的webapps这个路径,想建立自己的路径,也可以的.
在tomcat目录下建一个myweb文件夹,把自己的项目拷到这个文件夹,结构如下:
这种结构放置的话,最好把webapps下面的ROOT(大写),host-manager,manager拷过来,如果没有host-manager和manager,那就不用拷了.然后,server.xml里面的配置改为:
<Host name="admin.sorina" appBase="C:\tomcat-6.0\myweb" unpackWARs="true" autoDeploy="true"> <Logger className="org.apache.catalina.logger.FileLogger" directory="logs" prefix="localhost_log." suffix=".txt" timestamp="true"/> <Context path="" docBase="\myproject\admin\login" reloadable="true" caseSensitive="false" debug="0"></Context> </Host>
就好了.
其实,在配置过程中,比较重要的就是要分清appBase和docBase.