僅供參考
什麼是 Tomcat
Tomcat 簡單來說就是一個 Java web 服務器,在中小型系統和併發量小的場合下被普遍使用,是開發和調試Servlet、JSP 程序的首選。
Tomcat 結構目錄
- bin:存放啓動,關閉 Tomcat 和其他腳本
- conf:存放Tomcat的各種配置文件。這裏最重要的文件是server.xml,它是容器的主要配置文件。
- lib:存放運行 Tomcat 運行需要的jar包
- logs:存放日誌文件,當我們需要查看服務器運行情況的時候,可以查看日誌文件
- temp:存放 Tomcat 運行時產生的臨時文件
- webapps:存放web應用的位置(重點)
- work:存放jsp被訪問後生成對應的 .java 文件和 .class 文件
我的第一個 Hello Project
1.首先,在 webapps 目錄下創建 Hello 文件夾(目錄)
2.在新創建的 Hello 目錄下,創建 index.html,訪問它(注意看路徑:指定資源訪問)
3.僅僅只有 .html 文件時是不夠的;還需要創建 WEB-INF 目錄,且在 該目錄下創建一個web.xml
web.xml 是web應用的配置文件(可以從其他項目中複製一份【複製ROOT/WEB-INF/web.xml的文件到自己的項目目錄中】)
添加如下代碼:
// 指定項目首頁
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
4.訪問 Web 項目
如上圖,此時直接訪問 項目路徑即可【hello.html已經是web項目的首頁了,所以不需要指定資源訪問了】
【基本操作】之一:配置虛擬路徑
wsm
1.如果把所有web項目都放在webapps下,可能導致磁盤空間不夠用,也不利於對web項目的管理(如果存在非常多的web項目)
2.把web項目存放到其他磁盤管理就需要配置虛擬目錄(默認情況下都存放在webapps目錄下)
方法1:
1.在其他路徑下創建一個新的 web 項目,並創建WEB-INF目錄(包括web.xml)和一個html文件
2.找到 Tomcat 目錄下的 /conf/server.xml 文件
3.在 server.xml 文件中的 <Host 節點> 後添加如下代碼:
//path表示的是訪問該項目時輸入的web項目名
//docBase表示的是項目的絕對路徑
<Context path="/web" docBase="D:\web"/>
4.訪問項目
方法2:
1.在其他路徑下創建一個新的 web 項目,並創建WEB-INF目錄(包括web.xml)和一個html文件
之前方法1的設置已全部去除
2.在 Tomcat 目錄下找到並進入 /conf/Catalina/localhost
3.在該目錄下創建 一個 .xml 文件(該文件名即代指你關聯訪問的項目)
4.訪問項目
注:上述兩個虛擬路徑的配置時,在配置結束時均需要重新啓動 Tomcat ;另外,注意觀察其在瀏覽器中訪問項目時的 網站地址。
【基本操作】之二:修改 Tomcat 端口和配置臨時域名
修改 Tomcat 端口號
這個比較簡單,直接進入到 Tomcat 目錄下的 /conf/server.xml 文件,修改 <Connector 節點中的 port 值:
如上圖,修改端口號爲 8888.(端口被佔用時需要修改)
配置臨時域名
臨時域名也是訪問 Tomcat 服務器的一種方式,平時都是使用 localhost(主機名)或者 127.0.0.1 (本機地址)訪問 Tomcat 服務器。臨時域名可以說是一種較爲新鮮的方式。
1.進入到 C:\Windows\System32\drivers\etc 目錄下,找到 hosts 文件
2.在 hosts 文件中配置臨時域名
此時,既可以通過 localhost 主機名訪問 Tomcat 服務器中的項目,也可以通過配置的臨時域名 myhost 訪問 Tomcat 服務器中的項目。(未給項目設置虛擬主機前)
【基本操作】之三:設置虛擬主機
一個 Tomcat 可以認爲是一臺真實主機。在一臺真實主機中可以配置多個項目,這些項目在訪問者看來訪問它們就像在訪問各自獨立的主機一樣,所以我們可以認爲這些項目都運行在 Tomcat 這臺真實主機當中的各自的虛擬主機當中。一個網站就可以認爲是一個虛擬主機。
1.在 Tomcat 目錄的 /conf/server.xml 文件中 添加虛擬主機名
//name – 指定虛擬主機的名稱,瀏覽器通過這個名稱訪問虛擬主機
//appBase – 虛擬主機管理的目錄,放置在這個目錄下的web應用當前虛擬主機可以自動加載
<Host name="myhost" appBase="D:\web">
<Context path="/web" docBase="D:\web"/>
</Host>
缺省虛擬主機:如果訪問者是通過 ip 來訪問,這個時候服務器無法辨別當前要訪問的是哪臺虛擬主機中的資源,此時訪問缺省虛擬主機。
缺省虛擬主機可以在server.xml中engin標籤上通過defaultHost屬性進行配置
添加虛擬主機後,可見:
2.訪問虛擬主機下的 Web 項目