Tomcat7多网站、多端口

一、说明

1.appBase为项目的绝对路径,docBase为WEB目录

2.Host下的Alias是一个域名别称,可以配置多个域名。

3.Host里如果没有Context节点,则非webapps文件夹下,直接不用虚拟目录访问,会抛404找不到文件的错误,比如上面配置中test1域名下必须用虚拟目录比如这里的TestWeb2来访问;Host下面的context节点配置为:<Context path=“” 后,则这个目录为默认的访问目录,比如http://www.test2.com:880/,访问的D:\TomCat7.0\testapp\TestWebliu下面的文件,因为有默认首页,因此直接输入域名和端口可以直接访问到默认的index.jsp页面,如果没有默认页,可能会抛错,需要配置可以/为列目录,在conf/web.xml里.

5.该server下面两个service节点,每个service节点可以用Connector配置一个监听端口,service里有只能有一个Engine节点,它接受同级目录Connector端口的请求,可以通过defaultHost属性默认指向一个Host,Host就是一个该Connector端口下的域名,下面可以用Context配置多个虚拟目录。

即:server下面可以有多个service,用于配置不同监听端口

6. service下面可以有多个Host,用于配置该端口下的不同域名
    Host里可以包含多个Context,用于配置该端口该域名下的不同虚拟目录

二、多网站多域名

代码中灰色背景的是需要修改的,注意:配置文件中有两层<Service>是放到<Server port="8005" shutdown="SHUTDOWN">层里

///Catalina1 相当于网站的ID名字不能重复

<Service name="Catalina1">

///8080端口根据需要修改,不能重复

<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443" />

///8009 是AJP调用端口,不能重复

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

///Catalina1和上面的Catalina1写出一样

<Engine name="Catalina1" defaultHost="localhost">

<Realm className="org.apache.catalina.realm.LockOutRealm">

<Realm className="org.apache.catalina.realm.UserDatabaseRealm"

resourceName="UserDatabase"/>

</Realm>

///test.com 捆绑的域名

///webapps 默认的根目录

<Host name="test.com"  appBase="webapps"

unpackWARs="true" autoDeploy="true">

///path是说明虚拟目录的名字,如果你要只输入ip地址就显示主页,则该键值留为空

///docBase是虚拟目录的路径,它默认的是$tomcat/webapps/ROOT目录,现在我在webapps目录下建了一个myweb目录,

让该目录作为我的默认目录。

///debug和reloadable一般都分别设置成0和true。

///完整路径 $tomcat/webapps/test

///<Context 此行配置文件中默认没有,需加入

<Context path="" docBase="test" debug="0" reloadable="true"/>

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

prefix="localhost_access_log." suffix=".txt"

pattern="%h %l %u %t "%r" %s %b" />

</Host>

</Engine>

</Service>

下面是整体效果,因为展示不方便 我把注释都删除了。

二、多端口访问同一个项目

<Connector port="8090" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

三、多域名访问同一个项目

在Host里添加<Alias>

<Host name="abc.com"  appBase="webapps" unpackWARs="true" autoDeploy="true">

<Alias>www.123.com</Alias> <!--多个域名-->

<Alias>www.456.com</Alias> <!--多个域名-->

</Host>

四、重启Tomcat

/usr/java/apache-tomcat-7.0.67/bin/shutdown.sh && /usr/java/apache-tomcat-7.0.67/bin/startup.sh

五、如果停止Tomcat时,如图提示则配置文件有问题需要重新修改

下图是正常重启,停止和启动都无错.

时间: 2024-08-15 06:29:25

Tomcat7多网站、多端口的相关文章

记一次发布网站80端口无法访问的解决历程

近期的一个项目,是给一个企业做的官网.从新网租的域名,自己买的服务器. 网站做好后给他们发布,发现通过域名是无法访问的.以为域名出了问题,ping了下域名,发现是通的.觉得域名没有问题,然后又测试了其他端口,发现除了80端口,其他测得几个端口都可以访问. 初步可以得出结论,是网络运营商的问题,于是告诉企业,是他们的问题.于是企业去联系电信,结果返回的信息是,电信测了一下,80端口没有问题. 这就怪了,于是我们又测试看是不是什么程序占用了80端口,结果发现确实有一个pid为4的系统进程占了80端口

阿里云网站80端口无法访问

网站设置域名后,外网突然没办法访问 telnet 网址+80端口 提示无法访问 (PS:不知道telnet 的 百度: 开启 telnet 客户端) 提交给阿里云工单 回复:执行 cmd  执行 netsh http delete iplisten ipaddress=127.0.0.1 网站正常访问了

网站域名端口访问优化

问:有两个域名一. file.test.com:1003,二.filer.test.com,网站内容是一样的,访问非80端口的域名比80端口的速度慢了8秒,但必须使用非80端口的域名访问. ??架设一个ngnix,将到非80端口的请求再转发回80端口. 非80端口,域名解析 :http://bbs.csdn.net/topics/390237101 Nginx服务器中配置非80端口的端口转发方法详解:http://www.jb51.net/article/82046.htm

tomcat7配置远程调试端口

1.修改tomcat配置文件 WIN系统,在catalina.bat里: SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8787 Linux系统,在catalina.sh里: CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE -

WinServer 之 内网发布网站后端口映射外网访问

内网IP只能在内网局域网访问连接,在外网是不能认识内网IP不能访问的.如有路由权限,且路由有固定公网IP,可以通过路由的端口映射,实现外网访问内网.如无路由,或路由无公网IP,需要用到第三方开放的花生壳端口映射网络辅助实现外网访问内网. 一.通过路由端口映射 1.Tp-link路由器的端口映射设置方法: 登录到路由器的管理界面(认管理地址为http://192.168.0.1,账号admin密码admin),点击路由器的“ 转发规则—虚拟服务器—添加新条目成 ”,如图: 端口映射设置如下:服务端

Apache 的修改端口,虚拟主机搭建基于网站加密和常见问题解答

Apache 的修改端口,虚拟主机搭建基于网站加密和常见问题解答 作者  浩浩哥来了 首先需要确定apache这个服务存在 /etc/init.d/httpd restart 如果启动起来了说明你已经安装成功 如果启动不起来就需要自己手动安装,因为添加了本地源,所以可以直接安装 Yum install http* -y /etc/init.d/httpd restart 在一次检测下,服务安装成功与否 Cd /var/www/html 目录下是存放网页的路径 Vim index.html 因为当

apache2.2.25+tomcat7.0.47集群方案

因为公司项目在线人数的增加,随着现在硬件成本越来越低,大多数的生产环境内存大多都已经达到 16G,尤其最新的阿里云,客户的机器都是配置超高的java主机,但是Java的运行环境,内存使用有限 ,这样就造成了这台服务器资源的浪费,所以单机的多Tomcat集群就很有必要!当然有客户有多台服务器,这样更好了,配置会更少,性能会更强悍. 网上很多文章在说集群方案,很多配下来都是错的,也不说错误的原因,原本希望配置apache2.4+tomcat8的集群方案,配下来没成功,就配置apache2.2.25+

80端口占用解决方法(转)

今天启动Apache的时候老是提示失败,很简单,使用 netstat -ano 发现80端口被占用. 方法/步骤 今天启动Apache的时候老是提示失败,很简单,使用 netstat -ano 发现80端口被占用.如图所示: 按照PID 来说:在任务管理器中查看PID 的进程名 既然是system.那么 应该不回是真正的系统. 而是 微软的其他系列产品的进程在运行. [注意:我已经在服务 services.msc中结束了 IIS ADmin 服务] 但是 其实 IIS 服务真正没有关闭. 80端

此地址使用了一个通常用于网络浏览以外的端口。出于安全原因,Firefox 取消了该请求。

FirFox打开80以外的端口,会弹出以下提示: "此地址使用了一个通常用于网络浏览以外的端口.出于安全原因,Firefox 取消了该请求.".经网上搜索,解决方法如下: 在Firefox地址栏输入about:config,然后在右键新建一个字符串键network.security.ports.banned.override,将需访问网站的端口号添加到,值就是那个端口号即可. 如有多个,就半角逗号隔开,例:81,88,98 在能保证安全的前提下,还简化成这样写0-65535.这样,就可