Tomcat端口占用问题常见原因

时间:2024.5.2

Tomcat端口占用问题常见原因

当启动myEclipse的项目时,出现如下错误时

java.net.BindException: Address already in use: JVM_Bind<null>:8080

原因是:tomcat的8080的端口号被占用,

解决方法是:

将D:\Tomcat 6.0\conf下的server.xml文件中的

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

connectionTimeout="20000"

redirectPort="8443" />

中的8080改为8081或者是任意一个非8080的数字,然后重新启动项目即可

其中D:\Tomcat 6.0\conf是tomcat的安装路径

错误提示:

严重: Error initializing endpoint

java.net.BindException: Address already in use: JVM_Bind:80

at org.apache..PoolTcpEndpoint.initEndpoint(PoolTcpEndpoint.java:258)

at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:143) at org.apache.coyote.tomcat5.CoyoteConnector.initialize(CoyoteConnector.java:1402)

at org.apache.catalina.core.StandardService.initialize(StandardService.java:605)

at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:2369)

at org.apache.catalina.startup.Catalina.load(Catalina.java:507)

at org.apache.catalina.startup.Catalina.load(Catalina.java:528)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:324)

at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:247) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:421) 2006-2-8 16:36:37 org.apache.catalina.startup.Catalina load

严重: Catalina.start

LifecycleException: Protocol handler initialization failed: java.net.BindException: Address already in use: JVM_Bind:80

at org.apache.coyote.tomcat5.CoyoteConnector.initialize(CoyoteConnector.java:1404)

at org.apache.catalina.core.StandardService.initialize(StandardService.java:605)

at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:2369)

at org.apache.catalina.startup.Catalina.load(Catalina.java:507)

.......................

原因分析:在dos下运行“netstat -a ”查看当前端口的使用情况。

解决方法:修改Tomcat的使用端口,具体做法——找到目录...\Tomcat 5.0\conf,在conf目录下有“server.xml”文件,用记事本打开此文件,查找(打开文件后Ctrl+F)文件中的所有“8080”,并改为其他没有被占用的端口值(如:8088、8081等)。

也可以在任务管理器中结束javaw 进程。


第二篇:tomcat配置多个端口


Tomcat 6.0 配置多个端口

一、Tomcat 安装后本身提供了一个server,端口配置默认是8080,对应目录为:..\Tomcat 6.0\webapps

二、Tomcat 6.0 配置多个端口,其实也就是给Tomcat增加几个server,并设置对应目录。下面以增加两个端口号为例

第一步、修改server.xml[..\Tomcat 6.0\conf]

(1)Tomcat提供的如下:

<Service name="Catalina">

<Connector port="8090" maxHttpHeaderSize="8192"

maxThreads="150" minSpareThreads="25" maxSpareThreads="75"

enableLookups="false" redirectPort="8443" acceptCount="100"

connectionTimeout="20000" disableUploadTimeout="true" />

<Connector port="8009"

enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />

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

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

resourceName="UserDatabase"/>

<Host name="localhost" appBase="webapps"

unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

</Host>

</Engine>

</Service>

(2)比着上面的葫芦画下面的瓢、新增两个端口号,注意Service name、Engine name、appBase,

当然了,端口号别忘了修改,以免重复。

<Service name="Catalina1">

<Connector port="8091" maxHttpHeaderSize="8192"

maxThreads="150" minSpareThreads="25" maxSpareThreads="75"

enableLookups="false" redirectPort="8443" acceptCount="100"

connectionTimeout="20000" disableUploadTimeout="true" />

<Connector port="8009"

enableLookups="false" redirectPort="8443" protocol="AJP/1.3" /> <Engine name="Catalina1" defaultHost="localhost">

<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>

<Host name="localhost" appBase="webapps1"

unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

</Host>

</Engine>

</Service>

<Service name="Catalina2">

<Connector port="8092" maxHttpHeaderSize="8192"

maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" /> <Connector port="8009"

enableLookups="false" redirectPort="8443" protocol="AJP/1.3" /> <Engine name="Catalina2" defaultHost="localhost">

<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>

<Host name="localhost" appBase="webapps2"

unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

</Host>

</Engine>

</Service>

第二步、创建相应的部署目录

..\Tomcat 6.0\webapps1

..\Tomcat 6.0\webapps2

同时可以将Tomcat 6.0\webapps下的有用的复制到新建的部署目录 第三步、创建配置文件目录和配置文件

..\Tomcat 6.0\conf\Catalina1\localhost

..\Tomcat 6.0\conf\Catalina2\localhost

host-manager.xml

manager.xml

配置文件的配置可参照..\Tomcat 6.0\conf\Catalina\localhost下的,只需要修改一下对应目录即可

大概的配置步骤就是这些,现在可以把不同的war包放在不同的位置来访问了

以上配置方法同样适合Tomcat 5.5

搞了Tomcat6配置多虚拟主机很久,终于OK了。

真是够吐血的,记录下来,方便以后查阅了。

实现效果: 访问一个项目例如一个助学网。 访问一个项目例如一个办公系统

实现方案,需要修改两个地方

一个是C:\WINDOWS\system32\drivers\etc\hosts文件,改为

127.0.0.1 localhost

127.0.0.1 localhost1

另一个要改的就是server.xml,修改后如下:

Code

<?xml version='1.0' encoding='utf-8'?>

<Server port="8005" shutdown="SHUTDOWN">

<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />

<Listener className="org.apache.catalina.core.JasperListener" />

<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />

<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />

<GlobalNamingResources>

<Resource name="UserDatabase" auth="Container"

type="org.apache.catalina.UserDatabase"

description="User database that can be updated and saved"

factory="org.apache.catalina.users.MemoryUserDatabaseFactory"

pathname="conf/tomcat-users.xml" />

</GlobalNamingResources>

<Service name="Catalina">

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

connectionTimeout="20000"

redirectPort="8443" />

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

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

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

resourceName="UserDatabase"/>

<Host name="localhost" appBase="webapps"

unpackWARs="true" autoDeploy="true" debug="0">

<Context path="" docBase="E:\Tomcat6\webapps\YangFan\" reloadable="true" crossContext="true"/>

</Host>

<Host name="localhost1" appBase="webapps"

unpackWARs="true" autoDeploy="true" debug="0">

<Context path="" docBase="E:\Tomcat6\webapps\hiccOffice\" reloadable="true" crossContext="true"/>

</Host>

</Engine>

</Service>

</Server>

ok,重启tomcat6,就可以访问了,前提是保证写的路径正确。

如果本机已经申请了域名,那么只需要修改server.xml就可以。

只需要把localhost和localhost1分别改为不同的域名就OK了。十分的简单。

from:/mynetworktime/blog/item/1d21cd13c73b4758f819b8e7.html

问题:

1. 报 Caused by: Caught exception while loading file struts-default.xml 错

解决: 删除lib下的xerces-2.6.2.jar

更多相关推荐:
tomcat 8080端口被占用解决方法

tomcat因端口占用无法启动解决方法20xx0322223711分类技术分享标签tomcat端口占用解决方法8080jsp字号大中小订阅嗯嗯记录一下这个问题吧应该很多人会遇到其实端口占用问题不仅是tomcat...

关于tomcat启动端口号被占用问题解决

有时候把在myeclpise项目部署到tomcat中的时候会莫名其妙的发现tomcat启动不了换成是myeclpise自带的tomcat启动还是无法成功启动看看控制台显示的错误信息有时候会看到javanetBi...

tomcat端口占用解决方法

通常时候端口被占我只是不停的去shutdowntomcat然后再去任务管理器杀进程这样通常也很好用但是最近学到了一个比较科学的方法如下第一步查看一下是哪个进程在使用该端口使用如下命令批处理代码netstatan...

关于tomcat端口占用

Windowpreferences这是Myeclipse自带的tomcat我们一般不用这个直接将属性Disable选上再确定就ok了这样就不会开机启动这个自带的tomcat自然就不会占用我们的8080了这是配置...

Tomcat(8005,8080,8009)端口占用问题常见原因及解决方法

在企业版Eclipse中在已经启动了Tomcat服务器后准备运行页面或Servlet时有时会出现这样的关于Tomcat服务器端口占用的问题Severalports800580808009requiredbyTo...

tomcat端口占用

Tomcat端口占用文档authorHMFdesc解决端口占用date20xx10291CrtlR出现运行窗体XP2输入cmd确定3输入tasklist4回车5继续在本命令提示符框操作输入netstatano6...

Tomcat去除端口号和项目名

在一个项目结束的时候往往根据需要直接映射到一个IP地址上此时就需要去除端口和项目名了在访问的时候下面根据具体的例子提供一种实现方法1在进入TOMCATHOME创建文件夹将其命名为webdb此处为webdb根据需...

tomcat端口被占用问题

怎么解决tomcat占用8080端口问题相信很多朋友都遇到过这样的问题吧tomcat死机了重启eclipse之后发现Severalports80808009requiredbyTomcatv60Serverat...

如何解决端口冲突导致tomcat无法启动的问题

如何解决端口冲突导致tomcat无法启动的问题Tomcat沙龙国际在启动时主要使用下面的3个端口ltServerportquot8005quotshutdownquotSHUTDOWNquotdebugquot...

基于IP和端口号配置tomcat虚拟主机

配置虚拟主机有两种办法1在系统这个目录下面可以配置我们访问局域网内其它计算不用写IP的地方前面的IP可以写成局域网内的主机IP到时候访问就可以这样的了2在tomcat添加多个虚拟主机一个host就是一个虚拟主机...

整合tomcat 整合iis共用80端口

很多机器都用tomcat跟IIS部署不同网站最近买了阿里云的服务器于是也想玩一下网上百度了很多方法但是都有缺陷说的不是很清楚通过日志查看以及谷歌尝试了很多方法终于配置OK第一整合环境WindowsService...

Tomcat配置建立多站点、多域名、多端口、多应用、多主机汇总大全

Tomcat配置建立多站点多域名多端口多应用多主机汇总大全当你使用Tomcat作为WebServer的时候是不是会想过这样的一个问题如何利用Tomcat建立多个Web应用呢要实现这一点是很简单的也有多种方法以下...

tomcat端口号被占用(24篇)