TOMCAT的域名配置

现在很多的公司的网站都是用tomcat作为应用服务区的,可是对于初学者,8080端口号是如何去掉的,这些网站是如何和域名绑定到一起的呢?一个 tomcat是如何绑定多域名?并且这些域名是如何对应不同的项目呢?而且我的服务器没放在机房,放在我的本地,我应该如何把我的服务器给映射到外网?这一系列的问题,今天就这个问题,我来说一下。
1. 域名。现在的域名不是很贵,有很多人都有,而我们注册域名的网站也会有一个DNS助解析,就是把服务器的IP绑定到这些域名上。
2. 我们域名有了,现在就来说说我们的项目;比如说我现在有两个项目都在我的这个tomcat下面。那我们输入http://localhost:8080 /abc就可以访问到我们abc这个项目了,但是端口号8080如何去掉呢?在tomcat的conf文件夹下有一个server.xml。我们打开这个文件,找到8080,只需要把8080改成80即可。当我们再次输入http://localhost/abc即可。
3. 可是我们的域名如何跟项目绑定到一起呢?我们再次找到tomcat下面的conf文件夹里面的server.xml。修改<Host name="我们所要绑定的域名" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"></Host>
4. 当启动tomcat的时候,输入我们绑定的域名,是不是看到了我们的tomcat。可是我们想访问我们的项目还得再域名后面加上项目名称才能访问到,也就是说到现在我们的域名还没跟项目绑定到一起。我们在看一下第三部,想让我们的项目和域名绑定到一起,我们只需要在</Host>前面加上<Context docBase="项目名" path="" reloadable="true" >即可。
例如:<Host name="www.abc.com" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"><Context docBase="baidu" path="" reloadable="true" ></Host>
5. 当我们的有两个项目都放在同一个tomcat下的时候,我们只需要把<Host></ Host>加上两个既可以完成我们的2个项目的绑定,但是项目名称别忘了改哦。
6. 当我们的服务器自己维护(没有放在机房),我们需要对我们的路由做一下映射。就拿我的路由来举例。我的路由是TP-LINK WR340G型号,进入路由后,我们能找到一个转发规则,那里面有一个虚拟服务器的这项,点击新增条目以后会有:服务端口号、IP地址、协议、状态、常用服务端口号。我们只需在这里IP地址(服务器的局域网IP),协议选择ALL(有的路由好像没有这项,那就不需要填写了),状态选择生效,常用服务端口号选择HTTP或者WEB即可。这时默认的端口号为80。当常用服务端口号没有HTTP或者WEB这项时,可以选择DNS,然后手动把端口号改成80。点击生效。保存即可。如果说本人说的路由映射对您不适用或者没有看明白,可以上网找各种路由的映射方法。
7. 这个时候我们在输入我们的域名,是不是就直接访问到我们的项目了。

转载某某的……

有文章介绍的
1、配置www.***.com域名方式访问
在Tomcat下面配置域名(如:www.***.com)的时候,同时又不希望客户通过我们网站的IP或者域名访问到Tomcat默认的ROOT,配制方法如下:
  1、打开Tomcat安装目录下的/conf/server.xml文件
  2、在server.xml中将原有的<Host name=“localhost“ appBase=“webapps“ ……>修改为<Host name=“您要配置的域名“ appBase=“webapps“……>
  3、在/conf/Catalina目录下建立目录“<您要配置的域名的名称>”,然后建立ROOT.xml文件,其格式和/conf/localhost目录下的ROOT.xml一致,但是内容如下:
   <?xml version='1.0' encoding='utf-8'?>
   <Context displayname="Welcome to 56World!" docBase="D:/workplace/inbuilding" path="">
   </Context>
  其中docBase中的内容就是你希望的打开您的域名(www.***.com) 的时候映射到的目录和默认的网页(如:index.jsp)
  4、启动Tomcat服务器,就可以直接敲入域名访问你要访问的地址了。
2、配置ip地址方式访问(不需要项目名)
最近遇到一个朋友,他提出配置在tomcat下的项目不要用以往的访问方式”http://200.200.200.135:8080/Test“访问,他想只要输入一个IP地址即可访问。
于是到网上查资料,找到了解决的办法,就是更改tomcat的server.xml文件中的<Host></Host>中的内容,具体修改如下所述:(使用的是Tomcat6.0)

【原tomcat的server.xml文件中的Host部分内容】

Xml代码
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">

<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve classname="org.apache.catalina.authenticator.SingleSignOn" />
-->

<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve classname="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
< /Host>

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

<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve classname="org.apache.catalina.authenticator.SingleSignOn" />
-->

<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve classname="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
< /Host> 【修改后的server.xml文件中的Host部分】

Xml代码
<Host name="200.200.200.135" appBase="webapps/membermanage"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">

<Context path="" docBase="." />

<Context path="/membermanage" docBase="." />
< /Host>

< Host name="200.200.200.135" appBase="webapps/membermanage"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">

<Context path="" docBase="." />

<Context path="/membermanage" docBase="." />
< /Host>name后面可以填IP也可以是域名,如www.os.cn,这样修改以后,可以实现直接用http://200.200.200.135:8080访问,可以看到不用加入项目名称了,但是还需要加端口号,我的解决办法是再将tomcat的访问端口改成80(前提是项目有单独的服务器,80端口不要被别的软件占用等),这样就可以实现直接用http://200.200.200.135访问了。
备注:以上方法,在Tomcat6.0测试通过,如果是tomcat5.x,在按照上述方法配置后不成功的话,可能<Context path="" docBase="." /> 这里要改成<Context path="/" docBase="." />

原文:http://bbs.csdn.net/topics/370161919

相关推荐