设为首页 收藏本站
查看: 1260|回复: 0

[经验分享] Tomcat配置文件详解&应用部署问题排错

[复制链接]

尚未签到

发表于 2018-12-7 06:24:05 | 显示全部楼层 |阅读模式
  1. Tomcatt各配置文件功能详解:

  •   catalina.properties: 该文件包括服务器共享定义,共享加载器,和JARs,服务器在启动时会扫描此文件。
  •   server.xml:此文件包含重要信息,如IP地址,端口,虚拟主机和上下文路径等。
  •   tomcat-user.xml: 往往认证,授权,和角色定义在该文件中进行定义,还经常存储数据库用户名、密码、角色和管理容器的安全。
  •   logging.properties:定义tomcat日志的属性信息。
  •   web.xml:所有web应用加载到Tomcat实例的默认值,在tomcat启动时,假如应用有它自己的部署描述符,那它自己的定义优先web.xml中的定义。
  •   context.xml: 该文件的内容将会加载到第个应用中,比如配置持久连接的参数,连接追踪等。
  2. Context 路径:
  它常常被用来配置虚拟机,就是可以使得多个域名在相同的web服务器上或单一的IP。
  用来配置.war文件的URL映射。
  
  (1). Context路径主要带来两个好处:

  •   可以减少服务器的负载,当服务器收到一个请深圳市时,它会检查server.xml文件中的定义URL路径,假如找到的话,使用找到的路径进行服务的响应,否则服务器将会扫描所有的WAR文件,因此,它可以减少CPU的消耗。
  •   给了我们可以自已定义的自由,如我们可以针对不同应用定制logging,appBase,DB connection等。
  
  (2) 使用context path有两种方式:


  •   Tomcat WEB Application Manager(具体不介绍)
  •   在Server.xml使用命令行的配置
  配置示例:
  
  WEB-INF/web.xml
  
  
  path="/sample": 定义客户端请求服务器的URl,如:
     http://localhost:8080/sample
  docBase="/opt/" 定义war包所放在的路径
  reloadable="true" 在不用重新启动tomcat时,可以自动加载。
  swallowoutput="true": 针对system.out和system.err的日志将会重定向到应用日志中。。
  3. 应用的常见架构

  •   WEB-INF:是私有文件,不被别人访问的,主要 各个组件的组成关系等。
  •   WegbApplicationName:该目录中,所有的静态文件,比如HTML和JSP文件,也是应用的根。
  •   /WEB-INF/web.xml:包括了 web应用的部署描述符,针对应用指定的资源。
  •   /WEB-INF/classes:包括了所有类文件,还有第三方的类等。
  •   /WEB-INF/lib: 存放着JSP编译需要 的JAR文件。
  •   web.xml:包含所有的动态文件(servlets和JSP)还有一些比如信息相关的文件,比如会话超时时间和数据库的定义 。

  4. 归档文件:一般开发给的是一个归档好的文件,该文件包括了模块的类,静态文件,目录和部署描述符文件。一般用的JAR工具创建的。

  •   EJBs常被打包成.jar文件
  •   WEB应用打包成.war文件
  •   资源适配器打包成.rar文件
  •   企业应用被打包成.ear文件,也可以包括EJBs,WEB应用,和资源适配器
  •   WEB服务一般打包成.ear文件或者war文件。
  5. 在部署应用,配置时的常见问题及解决方法
  (1)问题1:在部署后, 别人访问的仍是老内容,就是新内容好像没有生效
  解决步骤:

  •   查看新文件是否在部署的目录里面
  •   检查catalina.out日志文件,查看WAR文件是有没有部署
  •   假如前两步检查没有问题,但问题仍然存在的话,那就停止服务器,清除work/Catalina/localhost/temp文件夹中的内容。
  cd /opt/apache-tomcat-8.0.12/temp/ rm -rf ../temp/*
  cd /opt/apache-tomcat-8.0.12/work/Catalina/localhost/ rm -rf ../localhost/*
  (2)问题2:在部署后,有些节点显示是新内容,但有些节点显示的是老内容
  解决步骤:

  •   查看新文件是否在部署的目录里面
  •   检查catalina.out日志文件,查看WAR文件是有没有部署
  •   假如前两步检查没有问题,但问题仍然存在的话,那就停止服务器,清除work/Catalina/localhost/temp文件夹中的内容。
  cd /opt/apache-tomcat-8.0.12/temp/ rm -rf ../temp/*
  cd /opt/apache-tomcat-8.0.12/work/Catalina/localhost/ rm -rf ../localhost/*

  •   重新动服务器,并检查两个服务器的数据库是否一致状态。
  (3)问题3:在改变server.xml文件后,tomcat实例无法启动
  解决步骤:

  •   进入到bin目录下
  •   运行configtst.sh,它会检查配置文件的。
  org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:435)Caused by: java.net.BindException: Address already in useat java.net.PlainSocketImpl.socketBind(Native Method)at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:383)at java.net.ServerSocket.bind(ServerSocket.java:328)at java.net.ServerSocket.(ServerSocket.java:194)
  上面的显示信息意味着已经运行了,那就停止服务器清除temp文件夹下的内容。然后重新启动服务器。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-644081-1-1.html 上篇帖子: tomcat5项目转移到安装版tomcat6的问题 下篇帖子: tomcat7启动报错:java.lang.NoSuchMethodException:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表