/ 中存储网

Tomcat6.0配置虚拟目录和绑定多个网站域名的方法

2013-10-28 08:20:01 来源:IT技术网

Tomcat6.0如何配置虚拟目录的设置多域名绑定?我们经常要在同一个tomcat中部署多个网站,这就要求配置多个域名了。另外这样做也有很多好处。比如tomcat6.0可以自动更新类和页面,当然如果修改了配置文件,或者web.xml和lib,则需要重启tomcat才可以.配置更方便,开设站点只需修改一个conf文件。

tomcat配置多个域名步骤一JDK安装

———————————————————————————-

1.1 点击jdk-6u1-windows-i586-p.exe文件安装Jdk,选择目录(假使E:jdk1.6),一路回车,安装完成

1.2 添加JAVA环境变量(我的电脑右键->属性->高级->环境变量->系统变量)

CLASSPATH设置变量值 .;%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin;%JAVA_HOME%/lib;%JAVA_HOME%/lib/tools.jar;%JAVA_HOME%/lib/dt.jar

JAVA_HOME设置变量值 C:Program FilesJavajdk1.6.0

PATH设置变量值 .;%JAVA_HOME%;%JAVA_HOME%/bin;(原来里面有内容的话 最后加入就行)

1.3 在DOS命令行状态下测试Java是否成功安装,敲入java -version可以查看版本

c:>java -version

java version “1.6.0_01″

Java(TM) SE Runtime Environment (build 1.6.0_01-b06)

Java HotSpot(TM) Client VM (build 1.6.0_01-b06, mixed mode, sharing)

1.4 测试HelloWorld,新建一个HelloWorld.java的文件,内容如下

public class HelloWorld {

public static void main(String arg[]) {

System.out.println(“Hello World!这是Java测试程序,说明你已成功安装了Java — Jarry!”);

}

}

在命令行输入javac HelloWorld.java,编译一下,然后再执行java HelloWorld,就能看到正常的输出了。

出现错误一般是环境变量或大小写等有问题,仔细检查就没有问题了。

tomcat配置多个域名步骤 2 Tomcat安装

———————————————————————————-

2.1 点击apache-tomcat-6.0.10.exe文件安装Tomcat,选择目录(假使d:Tomcat)安装完成后

2.2 添加TOMCAT环境变量(我的电脑右键->属性->高级->环境变量->系统变量)

TOMCAT_HOME设置变量值 d:/Tomcat

2.3 从程序菜单或是服务里启动Tomcat,然后你在浏览器输入http://localhost:8080/就可以看到Tomcat欢迎页面。

正常情况下都会成功,如果启动失败,请检查jakarta_service_日期.log日志,通过它一般可以解决问题。

比如出现类似报错:

[947 prunsrv.c] [error] Failed creating java

看一下系统盘windows/system32/下是否丢失msvcr71.dll文件,如果缺失,需要从别的机器拷贝一个过来。

在浏览器 进入http://localhost:8080/,当看见Tomcat小猫的图标了,这样表示安装成功。JSP服务器就搭建完成了,用于学习和测试没有问题了,如果想要更高级的配置,可以往下面继续看。

Tomcat 6与Tomcat 5或者之前版本不一样的就是,首页没有显示具体的版本,猫猫也变大了些。

没有admin管理页面了,admin在Tomcat 5.5来默认都没有了,不过可以下载admin包。

而Tomcat 6.0没有看见admin包,不过这并不要紧,一般情况下也不需要admin包。

Tomcat 6.0默认也没有开启servlet、禁止目录浏览。这需要去conf/下配置web.xml文件。

修改listings为true即可以目录浏览,

<param-name>listings</param-name>

<param-value>true</param-value>

<!– false disable listings –>

<!– <param-value>false</param-value>–>

开启servlet直接访问功能,把这两段注释打开。

<servlet>

<servlet-name>invoker</servlet-name>

<servlet-class>

org.apache.catalina.servlets.InvokerServlet

</servlet-class>

<init-param>

<param-name>debug</param-name>

<param-value>0</param-value>

</init-param>

<load-on-startup>2</load-on-startup>

</servlet>

<servlet-mapping>

<servlet-name>invoker</servlet-name>

<url-pattern>/servlet/*</url-pattern>

</servlet-mapping>

2.4 部署一个新项目chengqun,去conf/下配置server.xml

<Context path=”/chengqun” docBase=”d:tomcatwebappschengqun”></Context>

chengqun是你程序的目录重启Tomcat,访问http://127.0.0.1:8080/chengqun就可以访问了

======================================================================================================================

tomcat域名绑定与虚拟目录设置:

server.xml 的修改方式如下:

(一)tomcat多域名绑定

1.如果你要绑定网站,首先是要把tomcat的默认访问端口8080,修改成80

原始:

<Connector port=”8080″ protocol=”HTTP/1.1″

connectionTimeout=”20000″

redirectPort=”8443″ />

修改后:

<Connector port=”80″ protocol=”HTTP/1.1″

connectionTimeout=”20000″

redirectPort=”8443″ />

其实这里就是把port:8080,修改成port:80就可以了,其他的参数不变

2.接下来就是重点了哈哈…

单个域名绑定:

原始:

<Engine name=”Catalina” defaultHost=”localhost”>

<Host name=”localhost” appBase=”webapps” unpackWARs=”true” autoDeploy=”true” xmlValidation=”false” xmlNamespaceAware=”false” />

</Engine>

当然这里我把注释代码统统删除掉了,省的碍眼

修改后:

<Host name=”chengqun.202.71one.com” debug=”0″ appBase=”d:wwwrootchengqun”

unpackWARs=”true” autoDeploy=”true”

xmlValidation=”false” xmlNamespaceAware=”false”>

<Context path=”/” docBase=”d:wwwrootchengqun”></Context>

</Host>

多域名绑定:

<Host name=”chengqun.202.71one.com” debug=”0″ appBase=”d:wwwrootchengqun”

unpackWARs=”true” autoDeploy=”true”

xmlValidation=”false” xmlNamespaceAware=”false”>

<Alias>chengqun.202.71one.com</Alias>

<Alias>chengqun1.202.71one.com</Alias>

<Alias>chengqun2.202.71one.com</Alias>

<Context path=”/” docBase=”d:wwwrootchengqun”></Context>

</Host>

这里面的参数还有很多,我也不是很清楚,不过这样做确实可以实现多域名绑定哈哈.而且网站页面修改了只要直接覆盖就可以了,tomcat可以自动更新类和页面,当然如果修改了web.xml或lib,则需要重启tomcat才可以.

(二)虚拟目录

(1)

<Host name=”chengqun.202.71one.com” debug=”0″ appBase=”d:wwwrootchengqun”

unpackWARs=”true” autoDeploy=”true”

xmlValidation=”false” xmlNamespaceAware=”false”>

<Context path=”/chengqun” docBase=”d:wwwrootchengqun”></Context>

</Host>

其中,Host标记是用来配置虚拟主机的,就是可以多个域名指向一个tomcat,格式只要参考默认的就

可以了。

<context>是Host标记的子元素吧,表示一个虚拟目录,它主要有两个属性,path就相当于虚拟目录名字,

而 docbase则是具体的文件位置。在这里我的虚拟路径名称为chengqun,实际上我的程序也就是html、jsp、

servlet都 放在了d:wwwrootchengqun这个目录下了。

这样我就可以通过 chengqun.202. com/chengqun 访问我的这个虚拟目录了。

另外一种方法是:

<Host name=”chengqun.202. com” debug=”0″ appBase=”d:wwwrootchengqun”

unpackWARs=”true” autoDeploy=”true”

xmlValidation=”false” xmlNamespaceAware=”false”>

<Context path=”/” docBase=”d:wwwrootchengqun”></Context>

</Host>

这样设置以后,输入域名可以访问这个站点程序了(Context path=”/”这里不同)

(2)

没有指定默认站点,所以直接输入IP的时候,无法访问。如何让输入ip就可以访问指定的站点呢?

修改server.xml的 <Engine name=”Catalina” defaultHost=”chengqun.202. com”>

这样就可以实现了输入ip访问chengqun.202. com这个站点的程序了