`
smesoft
  • 浏览: 25346 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

Tomcat虚拟主机域名的设置

 
阅读更多

1.设置本地主机域名
    Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统再会将网址提交DNS域名解析服务器进行IP地址的解析。
    通过修改本地主机上的一个hosts文件,可以进行对ip地址与本地域名的映射,从而解决在本地调试JSP项目的时候,通过本地域名进行访问。
    hosts文件在系统目录C:\WINDOWS\system32\drivers\etc\下,这个目录不容易记忆,如果要经常修改这个文件的话不是很方便找,可以 建立一个批处理hosts.bat文件,用文本编辑器打开,写入内容explorer "C:\WINDOWS\system32\drivers\etc",保存退出,可以把这个hosts.bat文件放在桌面,每次双击它就能打开hosts文件所在的目录。也可以将hosts.bat文件放到C:\WINDOWS下,这样,每次只要从点“开始”->“运行”,输入hosts,点回车就可以打开hosts文件所在的目录了,另外在命令行也可以输入hosts打开hosts文件所在的目录。
    找到hosts文件后,用文本编辑器打开,默认状态下,hosts文件里只有一个映射关系:
    127.0.0.1       localhost
    按照这个格式再添加一个映射:
    192.168.1.186     www.sinbong.com
    保存,退出。这时候本地IP地址192.168.1.186已经和www.sinbong.com这个本地域名做了对应的映射关系。

2.server.xml配置简介
server.xml的基本配置信息,更具体的配置信息见tomcat的文档
server:
port 指定一个端口,这个端口负责监听关闭tomcat的请求
shutdown 指定向端口发送的命令字符串
service:
name 指定service的名字
Connector (表示客户端和service之间的连接):
port 指定服务器端要创建的端口号,并在这个断口监听来自客户端的请求
minProcessors 服务器启动时创建的处理请求的线程数
maxProcessors 最大可以创建的处理请求的线程数
enableLookups 如果为true,则可以通过调用request.getRemoteHost()进行DNS查询来得到远程客户端的实际主机名,若为false则不进行DNS查询,而是返回其ip地址
redirectPort 指定服务器正在处理http请求时收到了一个SSL传输请求后重定向的端口号
acceptCount 指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理
connectionTimeout 指定超时的时间数(以毫秒为单位)
Engine (表示指定service中的请求处理机,接收和处理来自Connector的请求):
defaultHost 指定缺省的处理请求的主机名,它至少与其中的一个host元素的
name属性值是一样的
Context (表示一个web应用程序,通常为WAR文件,关于WAR的具体信息见servlet规范):
docBase 应用程序的路径或者是WAR文件存放的路径
path 表示此web应用程序的url的前缀,这样请求的url为http://localhost:8080/path/****
reloadable 这个属性非常重要,如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重起tomcat的情况下改变应用程序
host (表示一个虚拟主机):
name 指定主机名
appBase 应用程序基本目录,即存放应用程序的目录
unpackWARs 如果为true,则tomcat会自动将WAR文件解压,否则不解压,直接从WAR文件中运行应用程序
Logger (表示日志,调试和错误信息):
className 指定logger使用的类名,此类必须实现
org.apache.catalina.Logger 接口
prefix 指定log文件的前缀
suffix 指定log文件的后缀
timestamp 如果为true,则log文件名中要加入时间,如下例:localhost_log.2009-10-10.txt
Realm (表示存放用户名,密码及role的数据库):
className 指定Realm使用的类名,此类必须实现org.apache.catalina.Realm接口
Valve (功能与Logger差不多,其prefix和suffix属性解释和Logger 中的一样):
className 指定Valve使用的类名,如用org.apache.catalina.valves.AccessLogValve类可以记录应用程序的访问信息directory 指定log文件存放的位置
pattern 有两个值,common方式记录远程主机名或ip地址,用户名,日期,第一行请求的字符串,HTTP响应代码,发送的字节数。combined方式比common方式记录的值更多

3.配置虚拟主机(Virtual Hosts)
      关于server.xml中“Host”这个元素,只有在你设置虚拟主机的才需要修改。虚拟主机是一种在一个web服务器上服务多个域名的机制,对每个域名而言,都好象独享了整个主机。实际上,大多数的小型商务网站都是采用虚拟主机实现的,这主要是因为虚拟主机能直接连接到Internet并提供相应的带宽,以保障合理的访问响应速度,另外虚拟主机还能提供一个稳定的固定IP。
  基于名字的虚拟主机可以被建立在任何web服务器上,建立的方法就是通过在域名服务器(DNS)上建立IP地址的别名,并且告诉web服务器把去往不同域名的请求分发到相应的网页目录。在Tomcat中使用虚拟主机,需要设置DNS或主机数据。在server.xml中设置内容,如下:

server.xml 代码

<Server port="8005" shutdown="SHUTDOWN" debug="0">   
<Service name="Tomcat-Standalone">   
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="80" minProcessors="5" maxProcessors="75" enableLookups="true" redirectPort="8443"/>   
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8443" minProcessors="5" maxProcessors="75" acceptCount="10" debug="0" scheme="https" secure="true"/>   
<Factory className="org.apache.coyote.tomcat4.CoyoteServerSocketFactory" clientAuth="false" protocol="TLS" />   
</Connector>   
<Engine name="Standalone" defaultHost="localhost" debug="0">   
   
<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true">   
<Context path="" docBase="ROOT" debug="0"/>   
<Context path="/small" docBase="/orders" debug="0" reloadable="true" crossContext="true">   
</Context>   
</Host>   
 
   
<Host name="www.sinbong.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> 
<Context docBase="jspwebsite" path="" reloadable="true" /> 
</Host>   
 
</Engine>   
</Service>   
</Server>    
  Tomcat的server.xml文件,在初始状态下,只包括一个虚拟主机,但是它容易被扩充到支持多个虚拟主机。增加虚拟主机只要增加完整Host标签即可。每一个Host元素必须包括一个或多个context元素,所包含的context元素中必须有一个是默认的context,这个默认的context的显示路径应该为空(例如,path="")。

捆绑的主机名以多个Alias列出即可.

<engine></engine>
xml 代码
<Engine   
defaultHost="localhost"   
name="Catalina">   
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>   
<Host   
appBase="webapps"   
name="localhost">   
<Alias>sinbong.com</Alias>   
<Alias>smesoft.org</Alias>   
<Alias>group.sinbong.com</Alias>
</Host>   
<Host   
appBase="webapps"   
name="sinbong.com">   
<Alias>sinbong.com</Alias>   
<Alias>smesoft.org</Alias>   
<Alias>group.sinbong.com</Alias>  
</Host>   
</Engine>  




也可以在后台管理界面配置:http://localhost:8080/admin


81行修改了两个参数值:
<connector port="80" maxhttpheadersize="8192"></connector>
<Connector port="80" maxHttpHeaderSize="8192"   
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"   
enableLookups="false" redirectPort="8443" acceptCount="100"   
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>  
xml 代码

  修改port是修改Tomcat的服务端口,默认为8080,URIEncoding改为UTF-8是为了使用中文路径
    但不建议使用.

  125行:<engine name="Catalina" defaulthost="ycoe.vicp.net"></engine>
xml 代码
<Engine name="Catalina" defaultHost="sinbong.com">   


192行:<host name="sinbong.com" xmlnamespaceaware="false" xmlvalidation="false" autodeploy="true" unpackwars="true" appbase="webapps"></host>
xml 代码
<Host name="sinbong.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">  


  然后再添加360行开始的<Host><host></host>元素:<host name="sinbong.com" autodeploy="true" unpackwars="true" appbase="webapps"></host>
xml 代码
<Host name="sinbong.com" appBase="webapps" unpackWARs="true" autoDeploy="true"   
xmlValidation="false" xmlNamespaceAware="false">   
<Context docBase="D:\" path="/" reloadable="true"   
workDir="D:\Tomcat\work\sinbong"></Context>   
</Host>  


  这里是设置我们的第二个虚拟网站的域名.
------------------------------------------------------------------
但不能用http://sinbong.com或http://sinbong.com访问


<engine></engine>
xml 代码
<Engine   
defaultHost="sinbong.com"   
name="Catalina">   
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>   
<Host name="sinbong.com"   
appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false" >   
<Alias>sinbong.com</Alias>   
<Context docBase="D:/" path="/" reloadable="true"   
workDir="D:/Tomcat/work/sinbong"></Context>   
</Host>   
</Engine>  



运行下面命令:

代码:
c:> ping sinbong.com
还有
c:> ping sinbong.com


分享到:
评论

相关推荐

    Tomcat基于域名的虚拟主机.doc

    tomcat的8005端口是用来关闭服务的,如果服务关闭不了那就执行下边操作,如果服务能正常访问,能正常关闭,那就不需要执行下边操作

    tomcat虚拟目录和虚拟主机的配置

    tomcat虚拟目录和虚拟主机的配置。照葫芦画瓢就可以,建议先搞,然后再了解原理。 1.可以一个端口地址后面跟多个web,这个可能软件部署的时候用的比较多 2.也可以一个tomcat配置多个站点,绑定多个域名。这种可能是...

    Tomcat 配置多虚拟主机,多域名绑定一个IP下的多个web项目

    该文档讲解了Tomcat 配置多虚拟主机,多域名绑定一个IP下的多个web项目。

    详解Tomcat多域名的配置

    这就需要在tomcat里配置多域名,添加多个虚拟主机。 主要在server.xml里面设置: 在&lt;Engine&gt;&lt;/Engine&gt;里面添加两个&lt;Host&gt;&lt;/Host&gt;标签,内容如下: &lt;Host name=www.123.com appBase=/usr/local/tomcat/webapps/123 ...

    tomcat虚拟主机_动力节点Java学院整理

    对于Tomcat服务器,可以放置多个网站(多个web应用),这就是讲配置多个虚拟主机,可以看成好像有多个主机,而每个主机上有一个web应用。如同之前的文章所说的,对于Tomcat服务器来讲,在server.xml文件中,一个标签...

    Apache + Tomcat + jk配置负载均衡以及虚拟主机 实现多域名、多用户同时使用

    windows平台下,Apache + tomcat + jk,配置负载均衡以及虚拟主机,达到可以多用户、多项目在同一台服务器中,同时开发、部署的目的。linux平台配置同意与此一致。

    APACHE 2.2.9+TOMCAT6.0.18配置负载均衡

    然后再设置TOMCAT虚拟主机 2 配置 tomcat 2.1. 配置 server 的关闭 我们需要在一台机器上跑 4 个不同的 tomcat ,需要修改不同的 tomcat 的关闭口,避免出现端口被占用的情况。在 TomcatA\conf, TomcatB\conf, ...

    tomcat+apache+jk集群和负载均衡

    tomcat+apache+jk集群和负载均衡

    jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip

    4、打开 IIS 控制台,新建一个站点,如果自己有域名的话可以在主机头中输入自己的域名, 如: www.oksonic.cn 这样就不会和原来的默认网站冲突了,现在需要将默认网关停止后再新建 5、新建一个虚拟目录,名称为...

    apahce2.2.4整合tomcat6.0.016

    #虚拟主机 # Virtual hosts Include conf/extra/httpd-vhosts.conf #TOMCAT整合开始 LoadModule jk_module modules/mod_jk-apache-2.2.4.so JkWorkersFile conf/workers.properties JkOptions +ForwardKeySize +...

    与DNS配置有关的nginx服务器配置

    要求 Nginx可以通过域名构建虚拟主机的方式同时对外提供 http://www.example.com, http://erp.example.com, http://oa.example.com 三个网站的访问。 访问 http://www.example.com 网站返回的HTML代码“&lt;h1&gt; ...

    Linux运维从入门到高级全套案例v3.rar

    5.1.2 nginx虚拟主机配置 5.1.3 nginx性能优化 5.1.4 nginx参数深入理解 5.1.5 Nginx Rewrite规则 面面面面 5.2构建 Rsync同步服务器 5.2.1 Rsync服务端配置………… 5.2.2Rsyc基于SsH同步 5.2.3 Rsync实时同步配置 ...

    Nginx实现根据域名http、https分发配置示例

    tomcat端口:8080 做好虚拟主机 nginx端口:80 根据域名分派 在conf/nginx.conf中的http中增加 代码如下: include www.jb51.net.conf 新建conf/www.jb51.net.conf,内容如下: 代码如下: server { listen 80; ...

    jsp网站永久换域名的处理过程

    1、在tomcat下针对旧域名做个虚拟主机 首页为index.jsp ,404错误页面为 unfind.jsp 首页使用301转向,有利于 搜索引擎优化 &lt;&#37; response.setStatus(301); response.setHeader( “Location”,”http://***.com...

    Linux运维从入门到高级全套案例v3

    5.1. 2 Nginx 虚拟主机配置 74 5.1. 3 Nginx性能优化 75 5.1. 4 Nginx参数深入理解 77 5.1. 5 Nginx Rewrite规则 78 5. 2 构建Rsync同步服务器 80 5.2. 1 Rsync服务端配置 80 5.2. 2 Rsync基于SSH同步 83 5.2. 3 ...

    计算机应用基础第六章.doc

    C、在计算机域名中,最左侧的为主机名,主机名后面的为主机所在的域名。 D、互联网中有一个唯一的根域,有13台根DNS服务器。 E、DNS服务器都需要在顶级域DNS服务器中注册。 F、一台计算机只能有一个域名。 正确答案...

    Web应用的负载均衡、集群、高可用(HA)解决方案

    属于老牌的web服务器了,支持基于Ip或者域名的虚拟主机,支持代理服务器,支持安全Socket层(SSL)等等,目前互联网主要使用它做静态资源服务器,也可以做代理服务器转发请求(如:图片链等),结合tomcat等servlet容器...

    服务器全能环境UPUPW ANK 64位版.zip

    05、优化删除虚拟主机状态按钮,由“完成”改成“确定”便于理解。  06、优化Apache错误日志,由warn改成crit以减少日志文件大小。  07、优化Apache证书端口监听配置防止http和https混淆。  ...

    Web安全深度剖析(张柄帅)

    14.3 虚拟主机提权 314 14.4 提权辅助 315 14.4.1 3389端口 315 14.4.2 端口转发 318 14.4.3 启动项提权 320 14.4.4 DLL劫持 321 14.4.5 添加后门 322 14.5 服务器防提权措施 324 14.6 小结 325 第15章 ARP欺骗攻击 ...

Global site tag (gtag.js) - Google Analytics