码迷,mamicode.com
首页 > 编程语言 > 详细

JavaWeb应用发布及相关配置

时间:2016-09-03 15:05:20      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:

一、组成结构

 

技术分享

 

二、在Tomcat中发布Web应用

1.默认方式发布:将Web应用所有文件复制到Tomcat的<CATALINA_HOME>/webapps目录下,启动Tomcat服务器。

  • 开放式目录结构应用:将整个Web应用目录复制到<CATALINA_HOME>/webapps目录下。
  • Web应用打包文件:将Web应用打包为.war文件  jar cvf c:\chapter03\helloapp.war *.*  再将.war文件复制到<CATALINA_HOME>/webapps目录下。

2.Web组件URL

  • HTML或JSP文件URL:eg.   http://localhost:8080/helloapp/login.htm      http://localhost:8080/helloapp/hello.jsp      
  • Servlet的URL:由web.xml文件的<url-pattern>指定。
     <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>mypack.DispatcherServlet</servlet-class>
      </servlet>
    
      <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/dispatcher</url-pattern>
      </servlet-mapping>

     

    •    Tomcat查找Servlet类文件的步骤:
    1. 找到web.xml的<url-pattern>的值为/dispatcher的<servlet-mapping>元素
    2. 读取<servlet-mapping>元素的<servlet-name>子元素的值为dispatcher
    3. 找到<servlet-name>子元素值为dispatcher的<servlet>元素
    4. 读取<servlet>元素的<servlet-class>子元素的值为mypack.DispatcherServlet,即Servlet类名为mypack.DispatcherServlet
    5. 到<CATALINA_HOME>/webapps/helloapp/WEB_INF/classes/mypack目录查找DispatcherServlet.class文件

      如图:

技术分享

 

3.配置Tomcat的<Context>元素发布Web应用

<Context>元素代表了运行在虚拟主机<Host>上的单个Web应用

  Tomcat 6.x配置<Context>几种途径:

  • 到<CATALINA_HOME>/conf/context.xml文件中配置<Context>元素,该<Context>元素信息适用于所有Web应用
  • 到<CATALINA_HOME>/conf/[enginename]/[hostname]/context.xml.default文件中配置<Context>元素,该<Context>元素信息适用于当前虚拟主机的所有Web应用         

    eg: <CATALINA_HOME>/conf/catalina/localhost/context.xml.default 

  • 到<CATALINA_HOME>/conf/[enginename]/[hostname]/[contextpath].xml文件中配置<Context>元素,[contextpath]表示单个Web应用的URL入口该<Context>元素只适用于单个Web应用

    eg:   <CATALINA_HOME>/conf/catalina/localhost/helloapp.xml

<Context path="/helloapp" docBase="C:\chapter03\helloapp" reloadable="true"/>

  path:Web应用URL入口

  docBase:helloapp应用文件路径C:\chapter03\helloapp

  • 到Web应用的META-INF/context.xml文件中配置<Context>元素,该<Context>元素只适用于当前Web应用
<Context path="/helloapp" docBase="helloapp" reloadable="true"/>

  path:Web应用URL入口
  docBase:helloapp应用文件路径<CATALINA_HOME>/webapps/helloapp

  • 到<CATALINA_HOME>/conf/server.xml文件中的<Host>元素中配置<Context>元素,该<Context>元素只适用于单个Web应用
<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">

        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->

        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
     <Context path="/helloapp" docBase="helloapp" reloadable="true"/> </Host>

 4.配置Tomcat虚拟主机

步骤:

  • 在<CATALINA_HOME>/conf/server.xml文件中的<Host>元素后面添加以下<Host>元素
<Host name="www.mycompany1.com" appBase="C:\mycompany1" 
unpackWARs="true" autoDeploy="true">
    <Alias>mycompany1.com</Alias>
    <Alias>mycompany1</Alias>

</Host>
  • 把helloapp应用复制到appBase指定的C:\mycompany1目录下
  • 在DNS服务器重注册虚拟主机名和别名,使他们的IP地址都指向Tomcat服务器所在主机,也可以通过修改C:\Windows\System32\drivers\etc文件夹下的hosts文件
# localhost name resolution is handled within DNS itself.
#    127.0.0.1       localhost
#    ::1             localhost
     127.0.0.1       www.mycompany1.com
  • 重启Tomcat服务器,然后通过浏览器访问  http://www.mycompany1.com:8080/helloapp/login.htm

 

JavaWeb应用发布及相关配置

标签:

原文地址:http://www.cnblogs.com/EmmaPei0416/p/5835939.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!