Tomcat就是這么簡單


什么是Tomcat

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


為什么我們需要用到Tomcat

如果你學過html,css,你會知道你寫的頁面只能自己訪問,別人不能遠程訪問你寫的頁面,Tomcat就是提供能夠讓別人訪問自己寫的頁面的一個程序


配置Tomcat

運行Tomcat需要JDK的支持【Tomcat會通過JAVA_HOME找到所需要的JDK】。

  • 新建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會有以下情況

  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文件


web站點的目錄是有規范的

為什么要這樣設置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中的 節點下添加如下代碼。 path表示的是訪問時輸入的web項目名,docBase表示的是站點目錄的絕對路徑

		<Context path="/web1" docBase="D:\web1"/>

  • 訪問配置好的web站點


配置虛擬目錄方法二:

  • 進入到conf\Catalina\localhost文件下,創建一個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:\Windows\System32\drivers\etc下,找到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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM