zoukankan      html  css  js  c++  java
  • Tomcat 默认应用

    在部署应用时需要更改默认的端口号及应用,以免让别人知道使用的服务器类型而进行攻击。
    tomca的部署有多种方式,这里简单谈一下。
    目前想到有三种方式:
    一、添加 Context
    在Tomcat的配置文件中,一个Web应用就是一个特定的Context,可以通过在server.xml中新建Context里部署一个JSP应用程序。
    在tomcat中conf目录下server.xml中的<host/>节点中添加:
    <Context path="/hello" docBase="D: workspacehelloWebRoot" debug="0" privileged="true"></Context>
    或者
    <Context path="/myapp" reloadable="true" docBase="D:myapp" workDir="D:myappwork"/>
    或者
    <Context path="/sms4" docBase="D:workspacesms4WebRoot"/>
    参数说明:
    path 是虚拟路径;
    docBase 是应用程序的物理路径;
    workDir 是这个应用的工作目录,存放运行时生成的与这个应用相关的文件;
    debug 则是设定debug level,  0表示提供最少的信息,9表示提供最多的信息
    privileged 设置为true的时候,才允许Tomcat的Web应用使用容器内的Servlet
    reloadable 如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重起tomcat的情况下改变应用程序,实现热部署
    antiResourceLocking和antiJARLocking  热部署时需要配置的参数,默认false避免更新了某个webapp,有时候Tomcat并不能把旧的webapp完全删除,通常会留下WEB-INF/lib下的某个jar包,必须关闭Tomcat才能删除,这就导致自动部署失败。设置为true,Tomcat在运行对应的webapp时,会把相应的源文件和jar文件复制到一个临时目录里。
    docBase 最好是tomcat/webapps 外的目录,不然就是加载了两个应用,一个是context path=””的web-demo应用,而另一个是context path=”web-demo”的应用,虽然两者指向的物理路径一致。因此,访问http://localhost:8080, 访问http://localhost:8080/web-demo,得到的是相同的首页,但是其实是tomcat的2个context的response。

    二、覆盖ROOT
    将项目拷贝到webapps下,并将项目名称改为ROOT,把原来的ROOT备份。

    三、修改 ROOT目录的index.jsp(不推荐,会暴露服务器默认首页)
    修改tomcat ROOT目录的index.jsp,使其加载默认应用的首页,如此处应修改成如下:
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title></title>
    <meta http-equiv="refresh" content="0;URL=<%=request.getContextPath()%>/web-demo/index.html">
    </head>
    <body>
    </body>
    </html>

    作者:robert
    出处:http://www.cnblogs.com/robertsun/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    如果文中有错误,欢迎指出。以免更多的人被误导。
    欢迎留言交流。
  • 相关阅读:
    decimal赋值
    "errcode":40001,"errmsg":"invalid credential, access_token is invalid or not latest hint: [d0tQ_02368635
    scope.row中属性值展示
    echarts.baidu 官网
    PowerDesigner使用
    解决 office2016 意外的严重错误 不能启动程序
    Jenkins 关闭和重启
    解决 weblogic poi3.9 报错 a different type with name "javax/xml/namespace/QName"
    WINDOWS7 下 xclient 802.1x 客户端 停止运行的解决办法
    前台进程转后台运行
  • 原文地址:https://www.cnblogs.com/robertsun/p/4173415.html
Copyright © 2011-2022 走看看