Tomcat7.0安裝配置

很久沒有通過博客對學習所得進行記錄了。

  現在將使用Tomcat的一些經驗和心得寫到這里,作為記錄和備忘。如果有朋友看到,也請不吝賜教。

? ? ?首先,我個人使用的是apache-tomcat-7.0.27你可以下載使用,前提條件你需要安裝JDK1.6或者1.7都可以,本人使用的jdk1.6,最好你還是使用jdk1.7,其他都一樣。

  1、首先是Tomcat的獲取和安裝。

    獲取當然得上Apache的官方網站下載,開源免費,而且帶寬也足夠。下載會很快。

  

    這是兩種不同的下載,一個是普通安裝版本,一個是解壓安裝版本。使用起來是一樣的,只是在普通安裝版本中有一些界面可提供對Tomcat的快捷設置,而且普通安裝會將Tomcat作為系統服務進行注冊。

  2、Tomcat的運行環境搭建。

    (解壓版)安裝(就是解壓)完成后如下:

  

    Tomcat的啟動是一個bat文件(Windows下),在bin目錄下。雙擊即可。

    如果啟動不成功,一般的情況是控制臺出來一下立即消失,說明Tomcat沒有找到Java的運行時環境。

    簡單理解,就是Tomcat找不到JDK,沒辦法運行。

    我們“告訴”它JDK的安裝路徑。即在環境變量里新建JAVA_HOME(不區分大小寫),指向JDK安裝目錄。如下:

  

    這樣,Tomcat就配置好了,啟動就OK。

    啟動Tomcat,在瀏覽器地址欄輸入http://localhost:8080/如果看到亂七八糟的關于Tomcat的介紹神馬,說明配置成功。

   3、Tomcat的目錄結構介紹。

      bin目錄存放一些啟動運行Tomcat的可執行程序和相關內容。

      conf存放關于Tomcat服務器的全局配置。

      lib目錄存放Tomcat運行或者站點運行所需的jar包,所有在此Tomcat上的站點共享這些jar包。

      wabapps目錄是默認的站點根目錄,可以更改。

      work目錄用于在服務器運行時過度資源,簡單來說,就是存儲jsp、servlet翻譯、編譯后的結果。

      其他目錄和文件暫時不做介紹。

  4、Tomcat的默認行為。

      我們的瀏覽器請求如果到達了Tomcat,并且請求無誤,一般Tomcat會以靜態頁面(即html文件)的形式給與響應,這是http服務器的默認行為。

      一個完整的資源請求包括:

      協議(如http)

      主機名(域名,如localhost、www.baidu.com)

      端口號(http協議默認為80,所以我們一般向某個網站發起請求沒有輸入)

      站點

      資源位置

?

        如http://localhost:8080/ROOT/index.jsp

      那么在第二步時我們只輸入了域名(或者主機名)就訪問到了某個具體的頁面,這是怎么回事呢?。

      首先,請求會通過一些途徑到達請求的主機地址并被該服務器(指硬件,如我們的本機電腦)上的http服務器程序獲得。這一步解釋起來比較麻煩,我們不做贅述,我會在其他篇幅里介紹。

      比如我們輸入http://localhost:8080到瀏覽器里。被Tomcat發現了。

?

      現在它拿到請求,先分析我們所請求的是什么資源。由于我們沒有指定,它會到默認的站點去拿默認的頁面給我們。

      現在我們把過程走一遍:

        服務器端:Tomcat監聽著8080端口,時時注意是否有請求過來。

        客戶端瀏覽器發出請求,到達了服務器端,由于端口的分配,請求最終被Tomcat得到。

        Tomcat解析請求的資源,發現沒有指定需要的是哪個站點下的哪個資源。

        Tomcat在默認的站點下把默認的頁面返回給客戶端瀏覽器作為響應。

  

  5、更改Tomcat默認配置。

     ①、修改Tomcat監聽端口。

        我們都有過訪問網站的經歷。我們一般只輸入了域名對吧,那么假設我們現在作為網絡服務提供者,將要對外發布網站,我們怎么讓用戶只輸入我們的域名就能看到我們為他/她準備的網頁呢?

        首先我們需要將監聽端口設置為80,只需要把Connector下面的port屬性設置為80就可以了,道理很簡單,用戶不會在瀏覽器輸入:8080來訪問網站,瀏覽器也不會自動將請求發送到服務器的8080端口。

       ???在%TOMCAT_HOME%(以下代指Tomcat的安裝路徑)下的conf目錄下的server.xml文件中修改。

  

      這個文件里東西不少,其實大家不必在意。為什么呢?你把注釋刪除后再把整個xml看作一個對象,是吧,每個節點是一個屬性,這個屬性又可能是一個對象,它里面有屬性……要這樣去理解,或者直接認為是Tomcat的配置信息到也沒錯。

      這樣,用戶就不用輸入:8080了。

    ②、修改默認站點。

      首先說,站點是具有特定結構的文件夾。這一點在Tomcat里表現得極為清晰。

      站點,在服務器上肯定是用文件夾(即目錄結構)來存儲和管理的。但是它和普通的文件夾又不同,在Tomcat里,可用于作為站點的文件夾必須有如下特點:擁有一個名為WEB-INF的子文件夾,該子文件夾下必須有一個名為web.xml的文件,而且該xml文件必須受約束與特定的DTD(web.xml內容可以參考webapps/ROOT/WEB-INF/web.xml。)。

      

我們先配置或者說叫創建一個站點,再將其設置為默認站點。

  配置站點:首先創建文件夾,創建WEB-INF子文件夾,創建web.xml,完成。web.xml內容可以參考webapps/ROOT/WEB-INF/web.xml。

  設置為默認站點,這里需要分為兩步執行:

  1:增加剛剛新建的站點讓Tomcat可以找到相關頁面。

  2:設置默認情況下Tomcat去那個站點(或文件夾)下請求。

告訴Tomcat當請求哪個站點時(或者說在域名后面跟的是什么名字),你來找我。

首先找到Host節點,然后在該節點下面添加Contextj節點,其中path屬性表示在域名后面跟的是什么名字,docBase屬性表示頁面程序存放的路徑,告訴Tomcat程序在哪里。這里設置path為空,表示域名后面不加任何路徑信息,也就是默認站點的作用。

  

  上圖已經將兩步配置好了(實際上Tomcat默認加上了將空站點指向ROOT的代碼),我們的d:/myweb

  如果你的站點存放在webapps目錄下,可以使用相對路徑,比如,我們將d:/myweb整個拷到%TOMCAT_HOME%/webapps下,上圖的docBase很明顯就不需要加上d:/了,直接寫成myweb就可以了。

  

 我在index.html里寫了幾句話,然后結果出來了:

  

?

    ③、修改默認頁面。

      在上面,我們還算是中規中矩,按照常理出牌,謝了index.html。那么如果沒有寫呢?Tomcat會怎么做呢?

      請大家找到conf/web.xml。這個文件是對所有站點的共同屬性做出了設置。比如大家看文件結尾處:

  

      這個叫做歡迎頁面,當沒有輸入資源地址時,會由上至下地查找,獲取頁面,進行響應。

      很清楚了吧,改動它就可以,但是不建議在這里改,會是所有站點設置變化,你應該將其復制到你需要改動的站點下的web.xml,進行設置。

   6、虛擬主機的配置。

      所謂虛擬主機,就是將一個或多個主機名(域名)和Tomcat所在的服務器進行綁定。由于一個IP可以和多個域名進行幫定,我們大可以將不同的域名指向服務器(指硬件)上的不同文件夾,造成一個服務器(或者一個IP)多個主機的“虛擬主機”效果。

      這個實現起來相當的簡單。只需要在server.xml文件中新建Host節點,將其屬性進行不同設置即可。

復制代碼
復制代碼
 1 #你的主機名(域名)12 <Host name="localhost"  appBase="webapps"3            unpackWARs="true" autoDeploy="true"4            xmlValidation="false" xmlNamespaceAware="false"> 5 </Host> 6 #你的域名27 <Host name="www.coderecord.org" appBase="主機空間地址" 8        unpackWARs="true" autoDeploy="true" 9        xmlValidation="false" xmlNamespaceAware="false">  
10        #域名3可以和域名2共用一個主機空間
11         <alias>coderecord.org</alias>
12         <Context path="" docBase="站點地址" debug="1" reloadable="true" allowLinking="true" />
13 </Host> 
復制代碼
復制代碼

以上配置信息根據Tomcat的版本不同而不同。

本篇隨筆對Tomcat的安裝、環境搭建、虛擬目錄、虛擬主機配置都有淺陋的見解,忘大家指正。

轉載于:https://www.cnblogs.com/master-zxc/p/5312999.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/458151.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/458151.shtml
英文地址,請注明出處:http://en.pswp.cn/news/458151.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

TIFF圖像文件格式詳解

from&#xff1a;https://www.cnblogs.com/gywei/p/3393816.html 1 什么是TIFF&#xff1f; TIFF是Tagged Image File Format的縮寫。在現在的標準中&#xff0c;只有TIFF存在&#xff0c; 其他的提法已經舍棄不用了。做為一種標記語言&#xff0c;TIFF與其他文件格式最大的不…

java 抽象工廠模式簡單實例

抽象工廠模式&#xff1a;提供一個創建一系列的相關的或者依賴的對象的接口&#xff0c;無需指定它們的具體實現類&#xff0c;具體的時間分別在子類工廠中產生。 類似于工廠模式&#xff1a;隔離了具體類的生產實現&#xff0c;使得替換具體的工廠實現類很容易。包含有以下模塊…

圖像處理之積分圖應用三(基于NCC快速相似度匹配算法)

from&#xff1a;https://blog.csdn.net/jia20003/article/details/53021614 圖像處理之積分圖應用三&#xff08;基于NCC快速相似度匹配算法&#xff09; 基于Normalized cross correlation(NCC)用來比較兩幅圖像的相似程度已經是一個常見的圖像處理手段。在工業生產環節檢測…

深入淺出地理解機器人手眼標定

from&#xff1a;https://blog.csdn.net/qq_16481211/article/details/79764730 所謂手眼系統&#xff0c;就是人眼鏡看到一個東西的時候要讓手去抓取&#xff0c;就需要大腦知道眼鏡和手的坐標關系。如果把大腦比作B&#xff0c;把眼睛比作A&#xff0c;把手比作C,如果A和B的…

centos 6.5 安裝 mongodb

官方給出的鏈接地址&#xff1a;https://docs.mongodb.org/manual/tutorial/install-mongodb-on-red-hat/ 安裝后重要的日志 win10 上使用mongochef連接不上數據庫 解決方案&#xff1a; 修改 /etc/mongod.conf 將bindIP 改為0.0.0.0 監聽外網轉載于:https://www.cnblogs.com/l…

scala學習資料

1. scala-sbt 構建工具&#xff1a; http://www.scala-sbt.org/0.13/docs/zh-cn/Directories.html 2. 資料&#xff1a; http://www.ibm.com/developerworks/cn/java/j-lo-funinscala2/ https://www.zhihu.com/question/34548588?sortcreated http://nerd-is.in/2013-09/scala…

opencv3/C++ 機器學習-SVM應用實例:藥品(膠囊)識別與分類

from&#xff1a;https://blog.csdn.net/akadiao/article/details/79278072 版權聲明&#xff1a;本文為博主原創文章&#xff0c;未經博主允許不得轉載。 https://blog.csdn.net/akadiao/article/details/79278072 問題描述&#xff1a; 現對6種不同顏色藥品&#xff08;膠囊…

Elasticsearch 搜索不到數據問題(_mapping 設置)

需求 由于 kibana3 中&#xff0c;不支持直接在請求的 url 中設置搜索的 type &#xff08;是不是我不知道&#xff1f;&#xff1f;&#xff1f;&#xff09;。 為了支持特定 type 的搜索&#xff0c;所以我設置了個下每個 panel 的查詢語句&#xff0c;讓它增加一個&#xff…

SVM之交叉驗證【轉】

交叉驗證(CrossValidation)方法思想簡介 以下簡稱交叉驗證(Cross Validation)為CV.CV是用來驗證分類器的性能一種統計分析方法,基本思想是把在某種意義下將原始數據(dataset)進行分組,一部分做為訓練集(train set),另一部分做為驗證集(validation set),首先用訓練集對分類器進…

linux命令學習-1-less

less 工具也是對文件或其它輸出進行分頁顯示的工具&#xff0c;應該說是linux正統查看文件內容的工具&#xff0c;功能極其強大。less 的用法比起 more 更加的有彈性。在 more 的時候&#xff0c;我們并沒有辦法向前面翻&#xff0c; 只能往后面看&#xff0c;但若使用了 less …

python問題匯總

問題1&#xff1a;如何解決python3中numpy報錯No module named numpy 打開terminal pip3 install numpy 問題2&#xff1a;ModuleNotFoundError No module named matplotlib 打開terminal pip3 install matplotlib

jspspy database help

.轉載于:https://www.cnblogs.com/outline/p/5316051.html

SVM 調參策略

轉自&#xff1a;SVM 調參策略&#xff1a;https://blog.csdn.net/u014484783/article/details/78220646 SVM 怎樣能得到好的結果 1. 對數據做歸一化&#xff08;simple scaling&#xff09; 2. 應用 RBF kernel 3. 用cross-validation和grid-search 得到最優的c和g 4. 用…

美好的?天 從ActionTab開始 美觀、智能、?效的新標簽? iTab 新標簽頁iTab新標簽頁Atop100工具推薦

文章目錄 ActionTabiTab 新標簽頁iTab新標簽頁&#xff0c;小組件&#xff0c;起始頁&#xff0c;標簽頁&#xff0c;日歷&#xff0c;股票&#xff0c;瀏覽器擴展 https://www.actiontab.cn/ ActionTab 收費&#xff1f;&#xff1f;&#xff1f;&#xff1f; iTab 新標簽頁iT…

Oracle學習之merge

--使用merge語句 create table new as select * from emp where 10; insert into new (empno,ename) select empno,ename from emp where deptno10;merge into new n using emp e on (n.empnoe.empno) when matched then update set n.sale.salwhen not matched then insert (…

機器學習中的算法(2)-支持向量機(SVM)基礎

from:http://www.cnblogs.com/LeftNotEasy/archive/2011/05/18/2034566.html 版權聲明&#xff1a; 本文由LeftNotEasy發布于http://leftnoteasy.cnblogs.com, 本文可以被全部的轉載或者部分使用&#xff0c;但請注明出處&#xff0c;如果有問題&#xff0c;請聯系wheeleastgm…

HDU 2586 How far away ?【LCA】

題目鏈接&#xff1a; http://acm.hdu.edu.cn/showproblem.php?pid2586 題意&#xff1a; 無向圖&#xff0c;給定邊及邊權重&#xff0c;任意兩點之間都有一條唯一的道路&#xff0c;道路上每個點只能出現一次。給定詢問&#xff0c;求詢問的結點之間的距離。 分析&#xff1…

深入理解拉格朗日乘子法(Lagrange Multiplier) 和KKT條件

from:https://blog.csdn.net/xianlingmao/article/details/7919597 在求取有約束條件的優化問題時&#xff0c;拉格朗日乘子法&#xff08;Lagrange Multiplier) 和KKT條件是非常重要的兩個求取方法&#xff0c;對于等式約束的優化問題&#xff0c;可以應用拉格朗日乘子法去求…

android一些若干回調測試

1.activity&#xff1a;onAttachedToWindow在onResume后回調 2.onCreate和onResume調用間隔為29ms, onAttachedToWindow和OnResume相差11ms, viewTreeObserver:OnGloballayout和onAttachedtoWindow相差19ms 注:以上的測試時間間隔不能保證精確相同&#xff0c;但是可以從中看出…

Kinect深度圖與攝像頭RGB的標定與配準(轉載文章)

作者原文地址&#xff1a;http://blog.csdn.net/aichipmunk/article/details/9264703 自從有了Kinect&#xff0c;根據深度圖提取前景就非常方便了。因此出現了很多虛擬現實、視頻融合等應用。但是&#xff0c;Kinect自身的RGB攝像頭分辨率有限&#xff0c;清晰度也不及一些專業…