Tomcat就是這麼簡單

什麼是Tomcat

Tomcat簡單的說就是一個運行JAVA的網絡服務器,底層是Socket的一個程序,它也是JSP和Serlvet的一個容器。css


爲何咱們須要用到Tomcat

若是你學過html,css,你會知道你寫的頁面只能本身訪問,別人不能遠程訪問你寫的頁面,Tomcat就是提供可以讓別人訪問本身寫的頁面的一個程序html


配置Tomcat

運行Tomcat須要JDK的支持【Tomcat會經過JAVA_HOME找到所須要的JDK】。web

  • 新建JAVA_HOME環境變量【路徑是JDK的主目錄】

  • 進入Tomcat目錄下的bin中啓動startup.bat,如下是成功啓動Tomcat的頁面。

  • 在瀏覽器地址欄輸入http://localhost:8080,若是可以出現Tomcat頁面,說明配置成功了

注意:若是在使用Tomcat時出現了Error deploying web application directory web222,很大緣由就是jdk和tomcat的版本不匹配。目前,jdk8不能匹配tomcat7.0,因此要下降jdk版本【換成JDK7】瀏覽器


固然也有可能不是一路順風可以直接啓動Tomcat,不能正常啓動Tomcat會有如下狀況tomcat

  1. JAVA_HOME配置錯誤
  2. 端口被佔用了服務器

    • 第一種方法:在cmd輸入netstat -anb查看誰佔用了該端口【Tomcat默認的是8080】,在進程中關閉它
    • 第二種方法:主動改變tomcat的端口, 到tomcat主目錄下的conf/server.xml文件中修改,把8080端口改爲是8088或者是其餘的‘

相關術語介紹


tomcat結構目錄

目錄的簡單介紹

  1. bin:啓動和關閉tomcat的bat文件
  2. conf:配置文件微信

    • server.xml該文件用於配置server相關的信息,好比tomcat啓動的端口號,配置主機(Host)
    • web.xml文件配置與web應用(web應用至關於一個web站點)
    • tomcat-user.xml配置用戶名密碼和相關權限.
  3. lib:該目錄放置運行tomcat運行須要的jar包
  4. logs:存放日誌,當咱們須要查看日誌的時候,能夠查詢信息
  5. webapps:放置咱們的web應用
  6. work工做目錄:該目錄用於存放jsp被訪問後生成對應的server文件和.class文件

webapps目錄的詳細說明

在webapps中創建了web1目錄,下面放置咱們的html文件,jsp文件,圖片等等,則web1就被當作web應用管理起來【tomcat6.0之後的版本才支持】網絡

例子:在webapps下建立一個web站點,在web站點下建立一個html文件,訪問html文件app


web站點的目錄是有規範的
webapp

爲何要這樣設置web站點目錄呢?

  • 需求:我有多個html文件,想把其中的一個html文件做爲我web站點的首頁。
  • 若是沒有WEB-INF目錄下的web.xml文件支持,是沒法解決個人需求的
  • 這個規範是約定熟成的。

下面將web站點下的helloword2.xml文件做爲站點的首頁

  • 新建一個WEB-INF目錄

  • 在WEB-INF目錄下建立一個web.xml

  • web.xml咱們不可能會寫,因此能夠在webapps目錄下其餘的站點中抄一份過來【複製ROOT/WEB-INF/web.xml的文件到本身的站點中】
  • 在web.xml中添加如下代碼
<welcome-file-list>
            <welcome-file>helloword2.html</welcome-file>
      </welcome-file-list>

  • 訪問web站點【helloword2.html已是web站點的首頁了,因此不須要指定資源訪問了


配置虛擬目錄

爲何須要配置虛擬目錄?

  • 若是把全部web站點的目錄都放在webapps下,可能致使磁盤空間不夠用,也不利於對web站點目錄的管理【若是存在很是多的web站點目錄】
  • web站點的目錄分散到其餘磁盤管理就須要配置虛擬目錄【默認狀況下,只有webapps下的目錄才能被Tomcat自動管理成一個web站點】
  • 把web應用所在目錄交給web服務器管理,這個過程稱之爲虛擬目錄的映射

配置虛擬目錄方法一:

  • 在其餘盤符下建立一個web站點目錄,並建立WEB-INF目錄和一個html文件。

  • 找到Tomcat目錄下/conf/server.xml文件

  • 在server.xml中的<Host>節點下添加以下代碼。path表示的是訪問時輸入的web項目名,docBase表示的是站點目錄的絕對路徑
<Context path="/web1" docBase="D:\web1"/>

  • 訪問配置好的web站點


配置虛擬目錄方法二:

  • 進入到confCatalinalocalhost文件下,建立一個xml文件,該文件的名字就是站點的名字。

這裏寫圖片描述

  • xml文件的代碼以下,docBase是你web站點的絕對路徑
<?xml version="1.0" encoding="UTF-8"?> 
<Context 
    docBase="D:\web1" 
    reloadable="true"> 
</Context>
  • 訪問web站點下的html資源

這裏寫圖片描述


配置臨時域名

訪問Tomcat服務器有好幾種方式

  • 使用localhost域名訪問【localhost表明本機】
  • 使用ip地址127.0.0.1訪問【該ip地址也是本機】
  • 使用機器名稱訪問【只限用於本機上或者局域網】
  • 使用本機IP地址訪問【在cmd中輸入ipconfig能夠查詢到本機IP地址
  • 還能夠爲機器配置臨時域名

配置臨時域名步驟

  • 打開到C:WindowsSystem32driversetc下,找到hosts文件

  • 在hosts文件下配置臨時域名


設置虛擬主機

什麼是虛擬主機?

多個不一樣域名的網站共存於一個Tomcat中

爲何須要用到虛擬主機?

例子:我如今開發了4個網站,有4個域名。若是我不配置虛擬主機,一個Tomcat服務器運行一個網站,我就須要4臺電腦才能把4個網站運行起來。

配置虛擬主機的步驟

  • 在tomcat的server.xml文件中添加主機名
<Host name="zhongfucheng" appBase="D:\web1">
                    <Context path="/web1" docBase="D:\web1"/>
      </Host>

  • 訪問虛擬主機下的web站點


Tomcat體系結構


瀏覽器訪問WEB資源的流程圖


練習

在瀏覽器輸入http//:zhongfucheng直接顯示到頁面

分析:

  1. 須要配置虛擬主機
  2. 把8080端口改爲80
  3. 設置web站點首頁
  4. 映射虛擬目錄爲/

若是文章有錯的地方歡迎指正,你們互相交流。習慣在微信看技術文章的同窗,能夠關注微信公衆號:Java3y
相關文章
相關標籤/搜索