Tomcat部署文件目录
/usr/share/tomcat/webapps
Tomcat静态文件映射
/usr/share/tomcat/conf/server.xml
<Context path="/files" docBase="/data/files" reloadable="true" crossContext="true"></Context>
docBase则指出了物理目录的位置
Tomcat错误bind: Address already in use
查看占用进程pid
netstat -nap
关闭占用进程
kill -9 pid
Tomcat查看异常日记
/usr/share/tomcat/log
Tomcat 8.0
问题:The valid characters are defined in RFC 7230 and RFC 3986
解决办法
vi catalina.properties
tomcat.util.http.parser.HttpParser.requestTargetAllow=|{}?&
Tomcat 9.0
问题:The valid characters are defined in RFC 7230 and RFC 3986
/conf/server.xml的Connector增加三个属性
URIEncoding="utf-8" relaxedPathChars="|{}[]^," relaxedQueryChars="|{}[]^,"
/conf/catalina.properties增加两行
tomcat.util.http.parser.HttpParser.requestTargetAllow=|{}?&
org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true
启动tomcat9
cd /usr/share/tomcat9/bin
./startup.sh
tomcat启动错误
[module-info.class] Invalid byte tag in constant pool: 19
在catalina.policy添加tomcat.util.scan.StandardJarScanFilter.jarsToSkip
tomcat9保存文件不能被其apache访问
方法1:
catalina.sh
更改UMASK=0027为UMASK=0022
if [ -z "$UMASK" ]; then
UMASK="0022"
else
UMASK="0022"
方法2:
usermod -a -G root apache
service httpd restart
centos 6.5 tomcat9开机启动
[root@localhost local]# vi /etc/rc.d/rc.local
增加一行
/usr/local/tomcat9/bin/startup.sh
Tomcat权限设置
Tomcat不应在root用户下运行。为Tomcat进程创建一个专用用户,并为该用户提供操作系统所需的最低权限。标准配置是所有Tomcat文件的owner是root & group 是 tomcat,同时owner具有读/写权限,group只有读权限,而全局没有权限。其中logs, temp and work directory的owner是tomcat用户而不是root。Tomcat进程以007的umask运行,以维护这些权限。