Tomcat总结

windows上解压版tomcat注册windows service

进入目录:tomcat安装目录/bin,然后执行以下命令即可

service.bat install

阿里云CentOS环境下tomcat启动速度慢

打开$JAVA_PATH/jre/lib/security/java.security这个文件,找到下面的内容:

securerandom.source=file:/dev/random

替换成

securerandom.source=file:/dev/./urandom

参考:CentOS环境下tomcat启动超级慢的解决方案

tomcat指定jdk版本

  1. 在tomcat的bin目录下找到setenv.sh文件,如果没有该文件则创建

  2. 在setenv.sh中加入如下内容

JRE_HOME=/usr/local/jdk1.8.0_45/jre

JRE_HOME的值指向对应版本jdk下的jre目录即可

tomcat配置jmx remote 远程监控tomcat Enabling JMX Remote

系统环境:linux

tomcat安装目录:/opt/apache-tomcat-7.0.68

参考:

Enabling JMX Remote 开启远程监控

RUNNING.txt tomcat启动说明

  1. 在tomcat的bin目录下创建setenv.sh文件并加入如下内容

CATALINA_PID=”$CATALINA_BASE/tomcat.pid”

CATALINA_OPTS=”$CATALINA_OPTS -Dcom.sun.management.jmxremote”

CATALINA_OPTS=”$CATALINA_OPTS -Dcom.sun.management.jmxremote.port=9010”

CATALINA_OPTS=”$CATALINA_OPTS -Dcom.sun.management.jmxremote.ssl=false”

CATALINA_OPTS=”$CATALINA_OPTS -Dcom.sun.management.jmxremote.authenticate=true”

CATALINA_OPTS=”$CATALINA_OPTS -Dcom.sun.management.jmxremote.password.file=$CATALINA_BASE/conf/jmxremote.password”

CATALINA_OPTS=”$CATALINA_OPTS -Dcom.sun.management.jmxremote.access.file=$CATALINA_BASE/conf/jmxremote.access”

第一句用于开启tomcat进程ID记录到文件,后面用于配置jmx remote参数

$CATALINA_BASE表示tomcat的安装目录,这里使用该变量是为了避免在非tomcat跟目录执行startup.sh的时候出现路径找不到的情况

  1. 在tomcat的conf目录下分别创建jmxremote.password,jmxremote.access两个文件

jmxremote.access文件内容如下:

monitorRole readonly

controlRole readwrite

其中monitorRole表示监控角色的登录账号,可以自己定义设置,readonly为权限。controlRole一样

jmxremote.password文件内容如下:

monitorRole 123456

controlRole 123456

  1. 设置jmxremote.password文件的权限为只读,注意只有当前所属用户可以访问(只读)改文件,该步骤设置不成功将导致”错误: 必须限制口令文件读取访问权限: ../conf/jmxremote.password”

chomod -rwx jmxremote.password

  1. 启动

错误处理:

“java.net.MalformedURLException: Local host name unknown”

该错误是由于系统设置了hostname,但是没有映射hostname和ip对应关系

cat /etc/sysconfig/network查看hostname,例如:server-tomcat

vi /etc/hosts在127.0.0.1后面加入hostname,修改前后对比如下:

修改前:127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

修改后:127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 server-tomcat

tomcat无法正常关闭

参考文章:

tomcat 无法正常关闭

虚拟目录设置

Tomcat7上设置虚拟目录可以通过war包的名称实现,如:dir#dir1#dir2.war发布以后的访问路径为http://host:port/dir/dir1/dir2,也不需要在localhost中增加配置文件,也不需要其他配置

get url encode Encoding 地址栏乱码 编码

修改方法:

修改tomcat下的conf/server.xml文件,找到Connector标签,添加useBodyEncodingForURI=”true”,如下代码: