如何解决端口冲突导致tomcat无法启动的问题
Tomcat在启动时主要使用下面的3个端口
<Server port="8005" shutdown="SHUTDOWN" debug="0">
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8080" minProcessors="5" maxProcessors="75"enableLookups="true" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="200000" useURIValidationHack="false" disableUploadTimeout="true" />
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8009" minProcessors="5" maxProcessors="75" enableLookups="true" redirectPort="8443" acceptCount="10" debug="0" connectionTimeout="20000" useURIValidationHack="false" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/>
端口被占用后的现象:
? 8080端口被占用,tomcat刚开始启动就立即停止;
? 8005端口被占用,tomcat启动后期停止;
? 8009端口被占用,tomcat会自动使用下一个未被占用的端口,无启动问题。
如果想查看端口的使用状态,在win2000下使用命令netstat –na;在winXP/2003下使用命令netstat –nao;把tomcat端口修改为未使用的端口然后再启动。
2、 修改java虚拟机内存
修改tomcat\bin\catalina.bat文件,在JAVA_OPTS变量使用前加入
set JAVA_OPTS=-Xms128m -Xmx256m
其中Xms为最小内存,Xmx为最大内存。
设定的最大内存可用如下命令测试:java -Xmx1048m -version
可以使用如下程序代码实现对内存的监控:
<%
Runtime lRuntime = Runtime.getRuntime();
out.println("Free Memory: "+lRuntime.freeMemory()+"<br>");
out.println("Max Memory: "+lRuntime.maxMemory()+"<br>");
out.println("Total Memory: "+lRuntime.totalMemory()+"<br>");
%>
3、 修改tomcat连接数
修改tomcat\conf\server.xml文件中的如下部分
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"port="8080" minProcessors="5" maxProcessors="75" enableLookups="true" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" useURIValidationHack="false" disableUploadTimeout="true" />
其中minProcessors为最小连接数;maxProcessors为最大连接数;acceptCount为允许最大连接数;connectionTimeout为网络连接超时时间毫秒数。
4、 禁止列出目录下的文件
修改tomcat\conf\web.xml文件中的如下部分,把true设置为false。
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
5、 设置session失效的时间
修改tomcat\conf\web.xml文件的如下部分,时间单位为分钟。
<session-config>
<session-timeout>30</session-timeout>
</session-config>
6、 设置MIME响应类型
如果文件在客户端中的响应程序类型和期望不一致,修改tomcat\conf\web.xml文件中的如下部分。
<mime-mapping>
<extension>zip</extension>
<mime-type>application/zip</mime-type>
</mime-mapping>
<mime-mapping>
<extension>mht</extension>
<mime-type>message/rfc822</mime-type>
</mime-mapping>
7、 设置tomcat的默认访问页面
修改tomcat\conf\web.xml文件中的如下部分。
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
8、 设置tomcat管理用户
修改tomcat\conf\tomcat-users.xml。
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="admin" password="" roles="admin,manager"/>
</tomcat-users>
附:
1、 Tomcat 5.x与Tomcat 4.x在解析提交表单时发生了变化,Tomcat 4.x无论是post还是get,都使用相同的编码,而Tomcat 5.x 却把get方法单独了出来,具体可查看tomcat的source code。
2、 Tomcat 5.x允许include的jsp页面重新定义解码方式(如下示例),而Tomcat4.x则不允许。
<%@ page contentType="text/html; charset=GBK" %>
如何解决端口冲突导致tomcat无法启动的问题
Tomcat在启动时主要使用下面的3个端口
<Server port="8005" shutdown="SHUTDOWN" debug="0">
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8080" minProcessors="5" maxProcessors="75"enableLookups="true" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="200000" useURIValidationHack="false" disableUploadTimeout="true" />
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8009" minProcessors="5" maxProcessors="75" enableLookups="true" redirectPort="8443" acceptCount="10" debug="0" connectionTimeout="20000" useURIValidationHack="false" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/>
端口被占用后的现象:
? 8080端口被占用,tomcat刚开始启动就立即停止;
? 8005端口被占用,tomcat启动后期停止;
? 8009端口被占用,tomcat会自动使用下一个未被占用的端口,无启动问题。
如果想查看端口的使用状态,在win2000下使用命令netstat –na;在winXP/2003下使用命令netstat –nao;把tomcat端口修改为未使用的端口然后再启动。
2、 修改java虚拟机内存
修改tomcat\bin\catalina.bat文件,在JAVA_OPTS变量使用前加入
set JAVA_OPTS=-Xms128m -Xmx256m
其中Xms为最小内存,Xmx为最大内存。
设定的最大内存可用如下命令测试:java -Xmx1048m -version
可以使用如下程序代码实现对内存的监控:
<%
Runtime lRuntime = Runtime.getRuntime();
out.println("Free Memory: "+lRuntime.freeMemory()+"<br>");
out.println("Max Memory: "+lRuntime.maxMemory()+"<br>");
out.println("Total Memory: "+lRuntime.totalMemory()+"<br>");
%>
3、 修改tomcat连接数
修改tomcat\conf\server.xml文件中的如下部分
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"port="8080" minProcessors="5" maxProcessors="75" enableLookups="true" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" useURIValidationHack="false" disableUploadTimeout="true" />
其中minProcessors为最小连接数;maxProcessors为最大连接数;acceptCount为允许最大连接数;connectionTimeout为网络连接超时时间毫秒数。
4、 禁止列出目录下的文件
修改tomcat\conf\web.xml文件中的如下部分,把true设置为false。
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
5、 设置session失效的时间
修改tomcat\conf\web.xml文件的如下部分,时间单位为分钟。
<session-config>
<session-timeout>30</session-timeout>
</session-config>
6、 设置MIME响应类型
如果文件在客户端中的响应程序类型和期望不一致,修改tomcat\conf\web.xml文件中的如下部分。
<mime-mapping>
<extension>zip</extension>
<mime-type>application/zip</mime-type>
</mime-mapping>
<mime-mapping>
<extension>mht</extension>
<mime-type>message/rfc822</mime-type>
</mime-mapping>
7、 设置tomcat的默认访问页面
修改tomcat\conf\web.xml文件中的如下部分。
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
8、 设置tomcat管理用户
修改tomcat\conf\tomcat-users.xml。
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="admin" password="" roles="admin,manager"/>
</tomcat-users>
附:
1、 Tomcat 5.x与Tomcat 4.x在解析提交表单时发生了变化,Tomcat 4.x无论是post还是get,都使用相同的编码,而Tomcat 5.x 却把get方法单独了出来,具体可查看tomcat的source code。
2、 Tomcat 5.x允许include的jsp页面重新定义解码方式(如下示例),而Tomcat4.x则不允许。
<%@ page contentType="text/html; charset=GBK" %>
分享到:
相关推荐
tomcat解决跨域访问问题,具体配置如下: 1、修改tomcat下的Conf/web.xml文件,在该文件内容中新增以下配置,注意,若该web.xml中存在其它filter,则需要将该filter放在所有filter前面; <filter-name>...
Tomcat参数配置详解;tomact在启动过程中遇到常见问题解决方法
在/usr/local/apache-tomcat-5.5.23/bin目录下的catalina.sh 添加:JAVA_OPTS='-Xms512m -Xmx1024m' 要加“m”说明是MB,否则就是KB了,在启动tomcat时会报内存不足。 -Xms:初始值 -Xmx:最大值 -Xmn:最小值 解决...
tomcat5中文问题完美解决
一般我们所装的linux服务器,是中文版的,所以系统环境的编码是gbk,然而我们项目的编码是UTF-8,这就必须在tomcat的server.xml文件中修改,在两个地方添加 URIEncoding="UTF-8",具体代码如下:
tomcat修改JVM内存配置(解决大项目内存溢出问题有效方案)
解决方式进入tomcat的server配置中进行添加参数配置 connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" relaxedPathChars="[]{}|\\^" relaxedQueryChars="[]{}|\\^" />
修改目的:为了解决使用HTTP Get方法传递中文参数乱码的问题 修改context.xml: 把修改成<Context reloadable="true"> 修改目的:当Web应用中的文件或者web.xml文件修改后,Tomcat服务器 会自动重新加载当前Web...
主要介绍了通过spring boot 设置tomcat解决 post参数限制问题,需要的朋友可以参考下
前端请求服务器的资源出现跨域的时候,一般是通过配置服务器的跨域来解决的,所以在此处我们配置服务器中的tomcat跨域就可以,具体操作如下: 1、通过如下地址 链接:...
主要介绍了解决Tomcat重新配置后启动慢的问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
参数配置 虚拟机选项: -Dcatalina.home = catalina-home -Dcatalina.base = catalina-home -Djava.endorsed.dirs = catalina-home /认可-Djava.io.tmpdir = catalina-home / temp -Djava.util.logging.manager = ...
Tomcat内存溢出的三种情况及解决办法分析 Tomcat内存溢出的原因 在生产环境中tomcat内存设置不好很容易出现内存溢出。造成内存原因是不一样的,当然处理方式也不一样。 这里根据平时遇到的情况和相关资料进行一个...
1,修改tomcat的JDK目录 2,增加虚拟目录 3,GET方法URL乱码问题解决 4,虚拟主机配置 等等
真正实现一键自动化部署,Nginx+Tomcat+Redis 实现负载均衡集群服务搭建,所有文件自动生成,包括自动生成配置文件参数、解决依赖问题、Session共享同步问题等等,直接把 Web 应用的 war 包,放进Tomcat的 webapps ...
最近遇到一个问题,比如GET请求中,key,value中带有特殊符号,请求会报错。接下来通过本文给大家分享解决SpringBoot2.1.3修改tomcat参数支持请求特殊符号 ,需要的朋友可以参考下
Tomcat 的 Servlet 是在 conf/web.xml 配置的,通过配置文件可知,当后缀名为 .jsp 和 .jspx 的时候,是通过JspServlet处理请求的: 可以得知,“1.jsp ”(末尾有一个和空格)并不能匹配到 JspServlet,而是会交...
前一段时间提交了一个产品版本给测试人员测试,测试结果简直出人意料! 测试一段时间后页面就卡死了,当时根据这个现象下意识的怀疑是...那就先解决下tomcat关不掉的问题吧,百度…检查代码…几十分钟后找到了,在tomc
服务器等软件的配制 Jsp中文乱码解决方案 上传与下载 Hibernate 参数设置.txt MD5_Encoding.java Struts2中三种表达式符号的用法.txt
该部署项目可直接引入IDE,但是由于电脑环境的问题,VersionLoggerListener有可能存在启动乱码。可以通过配置-Dfile.encoding=UTF8 -Duser.language=en -Duser.region=US这样的启动参数解决乱码问题。