日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

HTTP和HTTPS

發(fā)布時(shí)間:2023/12/13 综合教程 27 生活家
生活随笔 收集整理的這篇文章主要介紹了 HTTP和HTTPS 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

HTTP與HTTPS

HTTPS

HTTP傳輸數(shù)據(jù)是明文的不安全

各種加密的不安全

明文=裸奔

對稱加密:key唯一=明文

非對稱加密:s->c的數(shù)據(jù)不安全

對稱加密+非對稱加密:中間人問題,不安全

最終通過對稱加密+非對稱加密+CA認(rèn)證

實(shí)現(xiàn)了安全的數(shù)據(jù)傳輸

原理如圖

超文本傳輸協(xié)議](https://baike.baidu.com/item/超文本傳輸協(xié)議/8535513)(HTTP,HyperText Transfer Protocol)是互聯(lián)網(wǎng)上應(yīng)用最為廣泛的一種網(wǎng)絡(luò)協(xié)議。

URL 是統(tǒng)一資源定位符

四大特性:

1.基于tcp/ip之上作用于應(yīng)用層

2.基于socket的請求響應(yīng)

3.無狀態(tài)(不保存用戶狀態(tài))

4.無連接 一旦數(shù)據(jù)交互完成就斷開連接

(長連接(聊天websocket) 短連接)

報(bào)文格式

請求

? 請求行 GET /index.html HTTP/1.1(請求方法,請求URL,HTTP協(xié)議及版本)

? 請求頭 報(bào)文頭包含若干個(gè)屬性,格式為“屬性名:屬性值”,服務(wù)端據(jù)此獲取客戶端的信息。

? /r/n/r/n 空一行

? 請求體(一般get沒有,post有,用來存放請求參數(shù))

響應(yīng)

? 響應(yīng)行 HTTP/1.1 200 OK (報(bào)文協(xié)議及版本,狀態(tài)碼及狀態(tài)描述)

? 響應(yīng)頭 (告訴客戶端的一些鍵值對)

? /r/n/r/n 空一行

? 響應(yīng)體 返回給客戶端真正的內(nèi)容

tcp公用的 看一下

GET和POST的區(qū)別:

1、GET提交的數(shù)據(jù)會放在URL之后,以?分割URL和傳輸數(shù)據(jù),參數(shù)之間以&相連,如EditPosts.aspx?name=test1&id=123456. POST方法是把提交的數(shù)據(jù)放在HTTP包的Body中。
2、GET提交的數(shù)據(jù)大小有限制,最多只能有1024字節(jié)(因?yàn)闉g覽器對URL的長度有限制),而POST方法提交的數(shù)據(jù)沒有限制。
3、GET方式需要使用Request.QueryString來取得變量的值,而POST方式通過Request.Form來獲取變量的值。
4、GET方式提交數(shù)據(jù),會帶來安全問題,比如一個(gè)登錄頁面,通過GET方式提交數(shù)據(jù)時(shí),用戶名和密碼將出現(xiàn)在URL上,如果頁面可以被緩存或者其他人可以訪問這臺機(jī)器,就可以從歷史記錄獲得該用戶的賬號和密碼

cookie和session都是為了彌補(bǔ)http協(xié)議的無狀態(tài)特性,對server端來說無法知道兩次http請求是否來自同一個(gè)用戶,利用cookie和session就可以讓用戶只登錄一次,server就知道某個(gè)請求是否需用重新登錄。

1.cookie:客戶端第一次正常訪問服務(wù)器,服務(wù)器在response headers中返回與用戶信息相關(guān)的cookie,客戶端收到后把cookie保存在本地,下次再發(fā)請求時(shí)會在request headers中帶上這個(gè)cookie,服務(wù)器收到這個(gè)cookie就知道用戶狀態(tài)了。cookie可以設(shè)置過期時(shí)間,默認(rèn)值是-1,表示關(guān)閉瀏覽器時(shí)cookie就會失效,值為0時(shí)表示立馬失效,相當(dāng)于刪除cookie(cookie沒有刪除的方法),服務(wù)器和客戶端都可以設(shè)置cookie,但不可以操作另一個(gè)域名下的cookie。

2.session: 客戶端第一次正常訪問服務(wù)器,服務(wù)器生成一個(gè)sessionid來標(biāo)識用戶并保存用戶信息(服務(wù)器有一個(gè)專門的地方來保存所有用戶的sessionId),在response headers中作為cookie的一個(gè)值返回,客戶端收到后把cookie保存在本地,下次再發(fā)請求時(shí)會在request headers中帶上這個(gè)sessionId,服務(wù)器通過查找這個(gè)sessionId就知道用戶狀態(tài)了,并更新sessionId的最后訪問時(shí)間。sessionId也會可以設(shè)置失效時(shí)間,比如如果60分鐘內(nèi)某個(gè)session都沒有被更新,服務(wù)器就會刪除這個(gè)它。

總言之cookie是保存在客戶端,session是存在服務(wù)器,session依賴于cookie。

http響應(yīng)狀碼

用特定數(shù)字表示,服務(wù)器的狀態(tài)

1xx 消息,一般是告訴客戶端,請求已經(jīng)收到了,正在處理,別急...
2xx 處理成功,一般表示:請求收悉、我明白你要的、請求已受理、已經(jīng)處理完成等信息.
3xx 重定向到其它地方。它讓客戶端再發(fā)起一個(gè)請求以完成整個(gè)處理。
4xx 處理發(fā)生錯(cuò)誤,責(zé)任在客戶端,如客戶端的請求一個(gè)不存在的資源,客戶端未被授權(quán),禁止訪問等。
5xx 處理發(fā)生錯(cuò)誤,責(zé)任在服務(wù)端,如服務(wù)端拋出異常,路由出錯(cuò),HTTP版本不支持等。

1**(信息類):表示接收到請求并且繼續(xù)處理

100 Continue 服務(wù)器僅接收到部分請求,但是一旦服務(wù)器并沒有拒絕該請求,客戶端應(yīng)該繼續(xù)發(fā)送其余的請求。
101 Switching Protocols 服務(wù)器轉(zhuǎn)換協(xié)議:服務(wù)器將遵從客戶的請求轉(zhuǎn)換到另外一種協(xié)議。

2**(響應(yīng)成功):表示動作被成功接收、理解和接受

200 OK 請求成功(其后是對GET和POST請求的應(yīng)答文檔。)
201 Created 請求被創(chuàng)建完成,同時(shí)新的資源被創(chuàng)建。
202 Accepted 供處理的請求已被接受,但是處理未完成。
203 Non-authoritative Information 文檔已經(jīng)正常地返回,但一些應(yīng)答頭可能不正確,因?yàn)槭褂玫氖俏臋n的拷貝。
204 No Content 沒有新文檔。瀏覽器應(yīng)該繼續(xù)顯示原來的文檔。如果用戶定期地刷新頁面,而Servlet可以確定用戶文檔足夠新,這個(gè)狀態(tài)代碼是很有用的。
205 Reset Content 沒有新文檔。但瀏覽器應(yīng)該重置它所顯示的內(nèi)容。用來強(qiáng)制瀏覽器清除表單輸入內(nèi)容。
206 Partial Content 客戶發(fā)送了一個(gè)帶有Range頭的GET請求,服務(wù)器完成了它。

3**(重定向類):為了完成指定的動作,必須接受進(jìn)一步處理

消息 描述
300 Multiple Choices 多重選擇。鏈接列表。用戶可以選擇某鏈接到達(dá)目的地。最多允許五個(gè)地址。
301 Moved Permanently 所請求的頁面已經(jīng)轉(zhuǎn)移至新的url。
302 Found 所請求的頁面已經(jīng)臨時(shí)轉(zhuǎn)移至新的url。
303 See Other 所請求的頁面可在別的url下被找到。
304 Not Modified 未按預(yù)期修改文檔??蛻舳擞芯彌_的文檔并發(fā)出了一個(gè)條件性的請求(一般是提供If-Modified-Since頭表示客戶只想比指定日期更新的文檔)。服務(wù)器告訴客戶,原來緩沖的文檔還可以繼續(xù)使用。
305 Use Proxy 客戶請求的文檔應(yīng)該通過Location頭所指明的代理服務(wù)器提取。
306 Unused 此代碼被用于前一版本。目前已不再使用,但是代碼依然被保留。
307 Temporary Redirect 被請求的頁面已經(jīng)臨時(shí)移至新的url。

4**(客戶端錯(cuò)誤類):請求包含錯(cuò)誤語法或不能正確執(zhí)行

消息 描述
400 Bad Request 服務(wù)器未能理解請求。
401 Unauthorized 被請求的頁面需要用戶名和密碼。
401.1 登錄失敗。
401.2 服務(wù)器配置導(dǎo)致登錄失敗。
401.3 由于 ACL 對資源的限制而未獲得授權(quán)。
401.4 篩選器授權(quán)失敗。
401.5 ISAPI/CGI 應(yīng)用程序授權(quán)失敗。
401.7 訪問被 Web 服務(wù)器上的 URL 授權(quán)策略拒絕。這個(gè)錯(cuò)誤代碼為 IIS 6.0 所專用。
402 Payment Required 此代碼尚無法使用。
403 Forbidden 對被請求頁面的訪問被禁止。
403.1 執(zhí)行訪問被禁止。
403.2 讀訪問被禁止。
403.3 寫訪問被禁止。
403.4 要求 SSL。
403.5 要求 SSL 128。
403.6 IP 地址被拒絕。
403.7 要求客戶端證書。
403.8 站點(diǎn)訪問被拒絕。
403.9 用戶數(shù)過多。
403.10 配置無效。
403.11 密碼更改。
403.12 拒絕訪問映射表。
403.13 客戶端證書被吊銷。
403.14 拒絕目錄列表。
403.15 超出客戶端訪問許可。
403.16 客戶端證書不受信任或無效。
403.17 客戶端證書已過期或尚未生效。
403.18 在當(dāng)前的應(yīng)用程序池中不能執(zhí)行所請求的 URL。這個(gè)錯(cuò)誤代碼為 IIS 6.0 所專用。
403.19 不能為這個(gè)應(yīng)用程序池中的客戶端執(zhí)行 CGI。這個(gè)錯(cuò)誤代碼為 IIS 6.0 所專用。
403.20 Passport 登錄失敗。這個(gè)錯(cuò)誤代碼為 IIS 6.0 所專用。
404 Not Found 服務(wù)器無法找到被請求的頁面。
404.0 (無)–沒有找到文件或目錄。
404.1 無法在所請求的端口上訪問 Web 站點(diǎn)。
404.2 Web 服務(wù)擴(kuò)展鎖定策略阻止本請求。
404.3 MIME 映射策略阻止本請求。
405 Method Not Allowed 請求中指定的方法不被允許。
406 Not Acceptable 服務(wù)器生成的響應(yīng)無法被客戶端所接受。
407 Proxy Authentication Required 用戶必須首先使用代理服務(wù)器進(jìn)行驗(yàn)證,這樣請求才會被處理。
408 Request Timeout 請求超出了服務(wù)器的等待時(shí)間。
409 Conflict 由于沖突,請求無法被完成。
410 Gone 被請求的頁面不可用。
411 Length Required "Content-Length" 未被定義。如果無此內(nèi)容,服務(wù)器不會接受請求。
412 Precondition Failed 請求中的前提條件被服務(wù)器評估為失敗。
413 Request Entity Too Large 由于所請求的實(shí)體的太大,服務(wù)器不會接受請求。
414 Request-url Too Long 由于url太長,服務(wù)器不會接受請求。當(dāng)post請求被轉(zhuǎn)換為帶有很長的查詢信息的get請求時(shí),就會發(fā)生這種情況。
415 Unsupported Media Type 由于媒介類型不被支持,服務(wù)器不會接受請求。
416 Requested Range Not Satisfiable 服務(wù)器不能滿足客戶在請求中指定的Range頭。
417 Expectation Failed 執(zhí)行失敗。
423 鎖定的錯(cuò)誤。

5**(服務(wù)端錯(cuò)誤類):服務(wù)器不能正確執(zhí)行一個(gè)正確的請求

500 Internal Server Error 請求未完成。服務(wù)器遇到不可預(yù)知的情況。
500.12 應(yīng)用程序正忙于在 Web 服務(wù)器上重新啟動。
500.13 Web 服務(wù)器太忙。
500.15 不允許直接請求 Global.asa。
500.16 UNC 授權(quán)憑據(jù)不正確。這個(gè)錯(cuò)誤代碼為 IIS 6.0 所專用。
500.18 URL 授權(quán)存儲不能打開。這個(gè)錯(cuò)誤代碼為 IIS 6.0 所專用。
500.100 內(nèi)部 ASP 錯(cuò)誤。
501 Not Implemented 請求未完成。服務(wù)器不支持所請求

總結(jié)

以上是生活随笔為你收集整理的HTTP和HTTPS的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。