tomcat问题
前天晚上项目上线部署,用ansible执行启动tomcat,执行一次不成功,执行第二次也许会成功,不知道什么原因,然后在群里问了一下,然后大概总结了一下tomcat的一些东西,昨天晚上上线部署的时候还是原来的脚本,但都没有问题了,都不知道为什么。
1、startup.sh启动脚本里有两句话是这样:
EXECUTABLE=catalina.sh ...... exec "$PRGDIR"/"$EXECUTABLE" start "$@"
也就是说当你执行/usr/local/tomcat/bin/startup.sh的时候,相当于传递了一个start参数给catalina.sh,catalina.sh判断传递进来的参数,执行相应的操作,实际上是catalina.sh在执行,也就是可以/usr/local/tomcat/bin/catalina.sh start这样执行,可以查看catalina.sh的内容
if [ "$1" = "debug" ] ; then ...... elif [ "$1" = "run" ]; then ...... elif["$1"="start"];then ......
可以查看catalina.sh的用法,这也就说明了startup.sh、shutdown.sh、configtest.sh这些都是catalina.sh的封装
catalina.sh run starts tomcat in the foreground, displaying the logs on the console that you started it. Hitting Ctrl-C will terminate tomcat.
catalina.sh run 输出日志直接在终端显示,Ctrl+c结束,catalina.sh start 日志输出在logs/catalina.out
2、tomcat的三种端口,在同一台机器上,若有多个tomcat,这三个都得改,apache通过JK模块与tomcat通信,协议是AJP
<Server port="8005" shutdown="SHUTDOWN"> tomcat监听shutdown的命令端口 <Connector port="2017" protocol="HTTP/1.1" 8080为http端口,8443为https端口,通过8080端口接受请求 connectionTimeout="20000" redirectPort="8443"/> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/> 8009为ajp端口,apache能通过AJP协议访问tomcat的8009端口
3、在tomcat的启动过程中,还没启动完,然后我就想把tomcat给停掉,用/usr/local/tomcat/bin/shutdown.sh 这个命令,但是一直报错:
这是正常的,你都没启动成功,怎么可能会出来端口,只能用kill 的方式杀进程
4、下午的时候,windows添加ssh钥匙,然后一直连不上
总是报错 Permissions 0644 for ‘/root/.ssh/id_rsa_rsa’ are too open.把权限降到600就可以,windows下也可以使用chmod命令,不要一直傻不拉几的去改文件的属性,没用的
chmod 0600 /root/.ssh/id_rsa_rsa,然后就可以密钥登陆了
作者:李先生
-------------------------------------------
个性签名:在平凡中坚持前行,总有一天会遇见不一样的自己!
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!
万水千山总是情,打赏一分行不行,所以如果你心情还比较高兴,也是可以扫码打赏博主,哈哈哈(っ•̀ω•́)っ✎⁾⁾!
微信公众号 微信打赏 支付宝打赏
posted on 2017-05-27 10:13 Captain_Li 阅读(498) 评论(0) 编辑 收藏 举报