JavaWeb應用發佈及相關配置

1、組成結構html

 

 

2、在Tomcat中發佈Web應用web

1.默認方式發佈:將Web應用全部文件複製到Tomcat的<CATALINA_HOME>/webapps目錄下,啓動Tomcat服務器。apache

  • 開放式目錄結構應用:將整個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應用app

<Context>元素表明了運行在虛擬主機<Host>上的單個Web應用webapp

  Tomcat 6.x配置<Context>幾種途徑:jsp

  • 到<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 ui

  • 到<CATALINA_HOME>/conf/[enginename]/[hostname]/[contextpath].xml文件中配置<Context>元素,[contextpath]表示單個Web應用的URL入口該<Context>元素只適用於單個Web應用

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

<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
相關文章
相關標籤/搜索