Http協(xié)議及Tomcat服務(wù)器

一、http協(xié)議

  • http協(xié)議

它其實(shí)就是約定了客戶端和服務(wù)器端在執(zhí)行網(wǎng)絡(luò)交互動(dòng)作的時(shí)候一種規(guī)則霹粥。 執(zhí)行http請(qǐng)求的時(shí)候布蔗,遵守的一種規(guī)范

http://www.baidu.com / 
  • http協(xié)議版本

使用最廣泛的是1.1的版本。 它是一種請(qǐng)求 - 響應(yīng) 模型的協(xié)議。

1.0
    
    請(qǐng)求 - 響應(yīng)完畢后慈鸠,連接關(guān)閉  , 如果還想接著請(qǐng)求,必須得重新連接

1.1

    請(qǐng)求 - 響應(yīng)完畢后青团,連接未關(guān)閉 譬巫,還可以繼續(xù)發(fā)起請(qǐng)求

Http請(qǐng)求背后細(xì)節(jié)

http協(xié)議傳輸?shù)臄?shù)據(jù)包含三個(gè)部分 , 信息行 督笆、 信息頭 芦昔、 信息體

* 請(qǐng)求 

    請(qǐng)求行 

    請(qǐng)求頭

    請(qǐng)求體

* 響應(yīng)

    響應(yīng)行

    響應(yīng)頭

    響應(yīng)體

GET請(qǐng)求

提交的數(shù)據(jù):
Get請(qǐng)求
請(qǐng)求行 : 
    GET /LoginDemo/login?username=admin&password=123456 HTTP/1.1
    表示使用Get請(qǐng)求 , 表示請(qǐng)求什么路徑地址  娃肿,表示使用什么版本的協(xié)議

請(qǐng)求頭 

    Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, */*
    Referer: http://localhost:8080/LoginDemo/login.html
    Accept-Language: zh-CN
    User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E)
    Accept-Encoding: gzip, deflate
    Host: localhost:8080
    Connection: Keep-Alive


    Accept : 聲明客戶端可以接收什么類型的數(shù)據(jù)
    Referer : 表示請(qǐng)求從哪里過(guò)來(lái)的
    Accept-Language  : 表示客戶端支持的語(yǔ)言
    User-Agent  : 表示客戶端的信息
    Accept-Encoding  : 表示客戶端支持的壓縮格式
    Host : 表示主機(jī)地址
    Connection  : 表示連接狀態(tài)咕缎。
    
請(qǐng)求體:

    GET方式的請(qǐng)求,沒(méi)有請(qǐng)求體料扰。 因?yàn)閿?shù)據(jù)都是拼接到了地址上去了凭豪。


    獲取到的數(shù)據(jù): 
Get響應(yīng).png
響應(yīng)行

    HTTP/1.1 200 OK

    表示服務(wù)器也支持1.1的版本協(xié)議 , 對(duì)這次請(qǐng)求處理的狀態(tài)碼是200 晒杈,OK 

響應(yīng)頭

    Server: Apache-Coyote/1.1  : 服務(wù)器版本
    Content-Length: 75  : 返回的數(shù)據(jù)長(zhǎng)度
    Date: Sun, 21 May 2017 07:09:28 GMT  : 響應(yīng)時(shí)間

響應(yīng)體

    login failed ~ please use  username : itheima , password : 10086 try again~

POST請(qǐng)求

提交的數(shù)據(jù)

Post請(qǐng)求.png
請(qǐng)求行

    POST /LoginDemo/login HTTP/1.1  
    意思和get請(qǐng)求的意思一樣嫂伞,只不過(guò)這里的地址再也不跟數(shù)據(jù)了。

請(qǐng)求頭

    Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, */*
    Referer: http://localhost:8080/LoginDemo/login.html
    Accept-Language: zh-CN
    User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E)
    Content-Type: application/x-www-form-urlencoded
    Accept-Encoding: gzip, deflate
    Host: localhost:8080
    Content-Length: 29
    Connection: Keep-Alive
    Cache-Control: no-cache

    Content-Type :  其實(shí)就是說(shuō)明提交上去的數(shù)據(jù)是什么類型數(shù)據(jù) 拯钻。  是一個(gè)經(jīng)過(guò)url編碼的form表單數(shù)據(jù)
    Content-Length :  提交的數(shù)據(jù)長(zhǎng)度
    Cache-Control : 表示再次請(qǐng)求的時(shí)候帖努,是否讀緩存。 

請(qǐng)求體

    username=itheima&password=123

    是以流的形式寫給服務(wù)器的粪般。 

響應(yīng)數(shù)據(jù)

Post響應(yīng).png
    響應(yīng)行

    響應(yīng)頭

    響應(yīng)體

        HTTP/1.1 200 OK
        Server: Apache-Coyote/1.1
        Content-Length: 75
        Date: Sun, 21 May 2017 07:32:12 GMT
        
        login failed ~ please use  username : itheima , password : 10086 try again~

GET 和 POST方式的區(qū)別

  • GET

    1. 它的地址會(huì)帶上數(shù)據(jù)拼余, http://www.HiWeb.com?name=aa&age=18

    2. 能夠帶的數(shù)據(jù)有限制。

    3. 由于數(shù)據(jù)會(huì)拼接到地址欄上面刊驴,所以不安全

  • POST

    1. 它的地址不帶數(shù)據(jù)姿搜,就是很干凈的地址而已寡润。

    2. 帶的數(shù)據(jù)沒(méi)有限制捆憎。 (因?yàn)閿?shù)據(jù)是以流的方式寫過(guò)去。)

    3. 由于數(shù)據(jù)沒(méi)有拼接梭纹,所以數(shù)據(jù)比較安全

    4. 額外多兩個(gè)頭字段 Content-Type Content-Length.

軟件架構(gòu)

  • C/S架構(gòu)

    client【客戶端】 / server【服務(wù)器端】

    如: QQ 躲惰、微信、 迅雷 变抽、 LOL

必須得安裝一個(gè)客戶端础拨,才能和服務(wù)器對(duì)接。

優(yōu)點(diǎn):

    1.  視覺(jué)比較炫酷 绍载、 用戶體驗(yàn)好
    2.  一部分資源|數(shù)據(jù)放在了本地 诡宗、減輕服務(wù)器壓力

缺點(diǎn): 

    1. 占用本地硬盤空間
    2. 更新比較困難、 服務(wù)器只要一更新击儡,客戶端也得跟著更新
    3. 平臺(tái)塔沃、系統(tǒng)環(huán)境的限制
  • B/S架構(gòu)

    browser【瀏覽器】 / server【服務(wù)器端】

    如: 網(wǎng)頁(yè)游戲 、 網(wǎng)頁(yè)QQ 阳谍、

通過(guò)瀏覽器來(lái)和服務(wù)器對(duì)接

優(yōu)點(diǎn):

    1. 不用安裝 蛀柴、只要有瀏覽器就行螃概。 

    2. 一般也不用做更新。 

    3. 不受平臺(tái)限制 鸽疾、 不占用本地的空間吊洼。


缺點(diǎn):


    1. 用戶體驗(yàn)不好。  比較卡制肮。 

    2. 服務(wù)器壓力比較大冒窍、因?yàn)樗械馁Y源都放在服務(wù)器。 

Web資源

就是網(wǎng)絡(luò)上的任意資源都可稱之為web資源 豺鼻、 就是服務(wù)器里面所有東西超燃,都可以看做是web資源。

  • 靜態(tài)資源

不管什么時(shí)候來(lái)拘领,什么情況下見(jiàn)到的數(shù)據(jù)永遠(yuǎn)不變意乓。 圖片、 html網(wǎng)頁(yè)约素、 音樂(lè)届良、 ....

  • 動(dòng)態(tài)資源

根據(jù)不同的請(qǐng)求情況 、不同的時(shí)機(jī)圣猎、 顯示出來(lái)的數(shù)據(jù)內(nèi)容不一樣士葫、 那么這些產(chǎn)生變化的數(shù)據(jù)就稱之為動(dòng)態(tài)資源。 jsp / servlet

常見(jiàn)的服務(wù)器軟件:

Tomcat  : Apache 提供的一個(gè)免費(fèi)小型服務(wù)器軟件 送悔, 支持JSP/Servlet 規(guī)范

WebLogic  : Bea公司提供的收費(fèi)大型服務(wù)器軟件 慢显, 支持EE的所有規(guī)范

WebSphere : IBM公司收費(fèi)大型服務(wù)器軟件 ,  支持EE的所有規(guī)范

JBoss  :  一個(gè)基于J2EE開放源碼的服務(wù)器軟件 核心不支持 JSP/Servlet 欠啤,一般與tomcat 或者 jetty配合使用

安裝Tomcat

1. 解壓 

2. 進(jìn)入tomcat /bin  荚藻, 點(diǎn)擊startup.bat

3. 如果見(jiàn)到一閃而過(guò)的情形, 那么打開dos窗口洁段,然后拖拽startup.bat進(jìn)去后应狱,回車,即有提示祠丝,一般都是沒(méi)有配置環(huán)境變量  JAVA_HOME   CATALINA_HOME : 其實(shí)就是tomcat的根目錄路徑疾呻。

4. 配置好之后,在執(zhí)行即可

5. 打開瀏覽器写半,然后輸入地址  http://localhost:8080,頁(yè)面成功顯示即為安裝成功

Tomcat目錄解釋

Tomcat目錄.png
backup : 備份
##bin : 啟動(dòng)和停止的指令
##conf : 配置

    server.xml  web.xml catalina
lib : tomcat運(yùn)行必須的jar
logs : tomcat運(yùn)行的日志
temp : 臨時(shí)文件
##webapps : 項(xiàng)目發(fā)布的地方岸蜗,一般配合eclipse使用 。 
work : 這里是存放jsp 翻譯成的java文件  --- class文件
##wtpwebapps : 這是eclipse工具默認(rèn)發(fā)布項(xiàng)目存放的位置叠蝇。 與上面的webapps 意思一樣璃岳。

新建Web項(xiàng)目

1. 修改工作空間編碼 為 UTF-8

2. 配置tomcat環(huán)境 。 以后只要在這里運(yùn)行項(xiàng)目,那么項(xiàng)目就會(huì)自己發(fā)布到tomcat里面矾睦。


3. 新建動(dòng)態(tài)web工程

4. 在webContent下面新建一個(gè)html網(wǎng)頁(yè)

5. 右鍵工程  --- run on server

6. 在瀏覽器里面訪問(wèn)該網(wǎng)頁(yè) 晦款,路徑如下:

    http://localhost:8080/項(xiàng)目名/資源名

    http://localhost:8080/HiWeb/hi.html
  • run as Server 背后做了什么工作?

對(duì)我們的項(xiàng)目進(jìn)行編譯處理(java) 枚冗,然后拷貝項(xiàng)目到 tomcat根目錄\wtpwebapps 目錄下缓溅。

localhost : 本機(jī)

8080 : 端口

localhost:8080 : 找我們這臺(tái)電腦上端口號(hào)是8080 的那一個(gè)軟件 tomcat

http://localhost:8080/HiWeb/hi.html : 找到tomcat 位置后,進(jìn)入那個(gè)默認(rèn)的目錄 wtpwebapps 里面有一個(gè)文件夾 HiWeb 文件夾里面有一個(gè)文件 hihtml

得出一個(gè)結(jié)論:

一個(gè)項(xiàng)目其實(shí)就是tomcat\wtpwebapps | webapps 下面的一個(gè)文件夾赁温。 

http://localhost:8080/文件夾名字/資源名

發(fā)布Web項(xiàng)目

  • 問(wèn)題 : 如何發(fā)布一個(gè)項(xiàng)目(文件夾)到tomcat去呢 ?

1. 拷貝這個(gè)文件夾到tomcat\webapps

        訪問(wèn)路徑 : localhost:8080/文件夾名稱/文件名稱 即可 

2. 設(shè)置虛擬路徑

a . 在tomcat /conf/server.xml Host標(biāo)簽里面坛怪,寫上以下內(nèi)容

虛擬路徑1.png
             <!-- 
             http://localhost:8080/HiWeb02/icon_13.jpg
             docBase : 項(xiàng)目路徑
             path : 就是這個(gè)項(xiàng)目映射出來(lái)的路徑,這個(gè)路徑并不存在股囊,所以稱之為虛擬路徑 -->
            <Context docBase="D:\img08" path="/HiWeb02"/>

b . 在 tomcat / conf/catalina/localhost設(shè)置

虛擬路徑2.png
            1. 在該目錄下袜匿,新建一個(gè)文件heima13.xml,這個(gè)文件必須是xml文件稚疹。 文件的名稱就是我么你的虛擬路徑居灯, 當(dāng)然可以隨便寫。
            2. xml的文件內(nèi)容如下: 

                <?xml version="1.0" ?>
                <Context docBase="E:\html\"/>

            3. 那么文件的名稱就是設(shè)置的虛擬路徑 内狗,訪問(wèn)的格式如下: 

                http://localhost:8080/文件名/資源名稱

                http://localhost:8080/heima13/aa.txt
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末怪嫌,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子柳沙,更是在濱河造成了極大的恐慌岩灭,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,270評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件赂鲤,死亡現(xiàn)場(chǎng)離奇詭異噪径,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)数初,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門找爱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人妙真,你說(shuō)我怎么就攤上這事缴允。” “怎么了珍德?”我有些...
    開封第一講書人閱讀 165,630評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)矗漾。 經(jīng)常有香客問(wèn)我锈候,道長(zhǎng),這世上最難降的妖魔是什么敞贡? 我笑而不...
    開封第一講書人閱讀 58,906評(píng)論 1 295
  • 正文 為了忘掉前任泵琳,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘获列。我一直安慰自己谷市,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,928評(píng)論 6 392
  • 文/花漫 我一把揭開白布击孩。 她就那樣靜靜地躺著迫悠,像睡著了一般。 火紅的嫁衣襯著肌膚如雪巩梢。 梳的紋絲不亂的頭發(fā)上创泄,一...
    開封第一講書人閱讀 51,718評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音括蝠,去河邊找鬼鞠抑。 笑死,一個(gè)胖子當(dāng)著我的面吹牛忌警,可吹牛的內(nèi)容都是我干的搁拙。 我是一名探鬼主播,決...
    沈念sama閱讀 40,442評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼法绵,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼感混!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起礼烈,我...
    開封第一講書人閱讀 39,345評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤弧满,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后此熬,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體庭呜,經(jīng)...
    沈念sama閱讀 45,802評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,984評(píng)論 3 337
  • 正文 我和宋清朗相戀三年犀忱,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了募谎。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,117評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡阴汇,死狀恐怖数冬,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情搀庶,我是刑警寧澤拐纱,帶...
    沈念sama閱讀 35,810評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站哥倔,受9級(jí)特大地震影響秸架,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜咆蒿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,462評(píng)論 3 331
  • 文/蒙蒙 一东抹、第九天 我趴在偏房一處隱蔽的房頂上張望蚂子。 院中可真熱鬧,春花似錦缭黔、人聲如沸食茎。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)别渔。三九已至,卻和暖如春田巴,著一層夾襖步出監(jiān)牢的瞬間钠糊,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工壹哺, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留抄伍,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,377評(píng)論 3 373
  • 正文 我出身青樓管宵,卻偏偏與公主長(zhǎng)得像截珍,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子箩朴,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,060評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理岗喉,服務(wù)發(fā)現(xiàn),斷路器炸庞,智...
    卡卡羅2017閱讀 134,665評(píng)論 18 139
  • 一钱床、概念(載錄于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434閱讀 8,359評(píng)論 6 152
  • Http協(xié)議詳解 標(biāo)簽(空格分隔): Linux 聲明:本片文章非原創(chuàng),內(nèi)容來(lái)源于博客園作者M(jìn)IN飛翔的HTTP協(xié)...
    Sivin閱讀 5,224評(píng)論 3 82
  • 一.Web概述 1.Web發(fā)展歷史 原始年代1990-1992:1990年埠居,HTML標(biāo)記語(yǔ)言的出現(xiàn)標(biāo)志W(wǎng)eb開發(fā)時(shí)...
    賈里閱讀 1,316評(píng)論 0 5
  • 今天是破殼日真正的滿20歲 離過(guò)年還剩20% 碎碎念 總是被說(shuō)長(zhǎng)不大 還是那樣 也會(huì)說(shuō)別人 你怎么不變化 被侄女生...
    DomyL閱讀 219評(píng)論 0 0