web應用開發好後,若想供外界訪問,需要把web應用所在目錄交給web伺服器管理,這個過程稱之為虛擬目錄的對映。
虛擬目錄的對映三種方式:
1、在server.xml檔案的host元素中配置,例如:
2、在tomcat6中,不再建議在server.xml檔案中配置context元素,細節檢視tomcat伺服器關於context元素的說明。
web應用的組成結構:
開發web應用時,不同型別的檔案有嚴格的存放規則,否則不僅可能會使web應用無法訪問,還會導致web伺服器啟動報錯。
tomcat體系架構:
配置加密聯結器:
加密過程:接收方產生一對公鑰和私鑰,傳送方用接收方的產生的公鑰加密資料後,再用自己產生的私鑰再加密資料傳送給接收方,接收方先用傳送方的公鑰解密,再用自己的私鑰解密,在確認對方的公鑰時用到了ca數字證書。
私鑰加密公鑰解密時,用於確保資料**
配置過程:
• 在命令列中輸入命令:keytool -genkey -alias tomcat -keyalgrsa,根據提示輸入要產生金鑰庫的**和密碼,產生.keystore檔案,將該檔案放入tomcat伺服器conf資料夾下。
• 在tomcat的server.xml檔案中進行配置如下:
http協議:
客戶端連上web伺服器後,若想獲得web伺服器中的某個web資源,需遵守一定的通訊格式,http協議用於定義客戶端與web伺服器通迅的格式。
http是hypertext transfer protocol(超文字傳輸協議)的簡寫,它是tcp/ip協議的乙個應用層協議,用於定義web瀏覽器與web伺服器之間交換資料的過程。
在http1.0協議中,客戶端與web伺服器建立連線後,只能獲得乙個web資源。
http1.1協議,允許客戶端與web伺服器建立連線後,在乙個連線上獲取多個web資源。
http請求:
客戶端連上伺服器後,向伺服器請求某個web資源,稱之為客戶端向伺服器傳送了乙個http請求。乙個完整的http請求包括如下內容:
乙個請求行、若干訊息頭、以及實體內容,如下所示 :
l請求行中的get稱之為請求方式,請求方式有:
• post、get、head、options、delete、trace、put
• 常用的有: get、 post
不管post或get,都用於向伺服器請求某個web資源,這兩種方式的區別主要表現在資料傳遞上:
如請求方式為post方式,則可以在請求的實體內容中向伺服器傳送資料,post方式的特點:傳送的資料量無限制。
http請求頭
accept: 用於告訴伺服器,客戶機所支援的資料型別
accept-charset: 用於告訴伺服器,客戶機所採用的碼表
accept-encoding: 用於告訴伺服器,客戶機所支援的資料壓縮格式
accept-language: 用於告訴伺服器,客戶機的語法環境
host: 用於告訴伺服器,客戶機想訪問伺服器哪台主機
if-modified-since: 用於告訴伺服器,客戶機對於資源的最後快取時間
referer: 用於告訴伺服器,客戶機是從哪個頁面去訪問伺服器的 (防盜煉)
user-agent: 用於告訴伺服器,客戶機的機器環境(例如所使用的作業系統,瀏覽器版本號)
cookie:客戶端通過這個頭欄位,可以帶一些資料給伺服器
http響應:
l乙個http響應代表伺服器向客戶端回送的資料,它包括:
乙個狀態行、若干訊息頭、以及實體內容 。
l狀態行
格式:http版本號 狀態碼 原因敘述
舉例:http/1.1 200 ok
l 狀態碼用於表示伺服器對請求的處理結果,它是乙個三位的十進位制數。響應狀態碼分為5類,如下所示:
302:找別人
304和307:拿快取
http響應頭
location:這個頭通常配合302狀態碼使用,伺服器使用這個頭告訴瀏覽器去找誰
server:伺服器通過這個頭告訴瀏覽器,伺服器的型別
content-encoding: 伺服器通過這個頭告訴瀏覽器,資料的壓縮格式(gzip)
content-length:伺服器通過這個頭告訴瀏覽器,回送資料的長度
content-language:
content-type: 伺服器通過這個頭告訴瀏覽器,回送資料的型別
last-modified: 伺服器通過這個頭告訴瀏覽器,資料的最後修改時間
refresh:伺服器通過這個頭告訴瀏覽器,多長時間定時重新整理
transfer-encoding: 伺服器通過這個頭告訴瀏覽器,資料是以塊方式回送的
expires:控制瀏覽器快取資料的時間(-1或0,代表控制瀏覽器不要快取)
cache-control: no-cache
pragma: no-cache 以上三個頭一起用,就可以控制所有的瀏覽器不要快取資料
HTTP協議學習
1 什麼是http協議?http是超文字傳輸協議,是基於tcp ip協議之上實現的用於客戶端和伺服器之間資料傳輸的一種協議 2 什麼是http協議的無狀態?怎麼解決http協議的無狀態?解決 使用cookie或者session來保持會話 3 http支援的方法有哪些?一共有8種請求方法 get 獲取...
HTTP協議學習
面試過程中又乙個常見的問題,http協議,因為做伺服器開發如果用http協議的話,現在各種開源軟體都封裝好了,python中只需要簡單的繼承定義好的類,重寫get或者post等方法,幾行 就可以搭建起來乙個簡單的http伺服器,導致底層對程式設計師來說都是透明的了。但是面試中追求這個底層的問題還不少...
HTTP 協議學習
摘自 http簡介 http,hyper text transfer protocol 超文字傳輸協議 是用於從全球資訊網 www world wide web 伺服器傳輸超文字到本地瀏覽器的傳送協議。http是乙個基於tcp ip通訊協議來傳遞資料 過程 http協議工作於客戶端 服務端架構為上。...