国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > Apache > 正文

詳解為新版Apache服務(wù)器開啟HTTP/2支持的方法

2024-08-27 18:24:33
字體:
供稿:網(wǎng)友

HTTP 2.0簡(jiǎn)介
HTTP 2.0即超文本傳輸協(xié)議 2.0,是下一代HTTP協(xié)議。是由互聯(lián)網(wǎng)工程任務(wù)組(IETF)的Hypertext Transfer Protocol Bis (httpbis)工作小組進(jìn)行開發(fā)。是自1999年http1.1發(fā)布后的首個(gè)更新。HTTP 2.0在2013年8月進(jìn)行首次合作共事性測(cè)試。在開放互聯(lián)網(wǎng)上HTTP 2.0將只用于https://網(wǎng)址,而 http://網(wǎng)址將繼續(xù)使用HTTP/1,目的是在開放互聯(lián)網(wǎng)上增加使用加密技術(shù),以提供強(qiáng)有力的保護(hù)去遏制主動(dòng)攻擊。DANE RFC6698允許域名管理員不通過第三方CA自行發(fā)行證書。

IETF會(huì)讓所有互聯(lián)網(wǎng)通路默認(rèn)選擇的方式來引入加密,互聯(lián)網(wǎng)專家們將新一代加密協(xié)議稱為“HTTP 2.0”。

協(xié)議目標(biāo):

異步連接多路復(fù)用; 頭部壓縮; 請(qǐng)求/響應(yīng)管線化;

保持與HTTP 1.1語義的向后兼容性也是該版本的一個(gè)關(guān)鍵目標(biāo)。SPDY是一種HTTP兼容協(xié)議,由Google發(fā)起,Chrome、Opera、Firefox以及Amazon Silk等瀏覽器均已提供支持。HTTP實(shí)現(xiàn)的瓶頸之一是其并發(fā)要依賴于多重連接。HTTP管線化技術(shù)可以緩解這個(gè)問題,但也只能做到部分多路復(fù)用。此外,已經(jīng)證實(shí),由于存在中間干擾,瀏覽器無法采用管線化技術(shù)。SPDY在單個(gè)連接之上增加了一個(gè)幀層,用以多路復(fù)用多個(gè)并發(fā)流。幀層針對(duì)HTTP類的請(qǐng)求響應(yīng)流進(jìn)行了優(yōu)化,因此運(yùn)行在HTTP之上的應(yīng)用,對(duì)應(yīng)用開發(fā)者而言只要很小的修改甚至無需修改就可以運(yùn)行在SPDY之上。SPDY對(duì)當(dāng)前的HTTP協(xié)議有4個(gè)改進(jìn):

多路復(fù)用請(qǐng)求; 對(duì)請(qǐng)求劃分優(yōu)先級(jí); 壓縮HTTP頭; 服務(wù)器推送流(即Server Push技術(shù));

SPDY試圖保留HTTP的現(xiàn)有語義,所以cookies、ETags等特性都是可用的。[3]

如何在 Apache 中啟用 HTTP/2
剛發(fā)布的 Apache httpd 2.4.17 終于支持 HTTP/2 了。這個(gè)頁面給出了一些如何構(gòu)建/部署/配置的建議。目的是為了大家發(fā)現(xiàn) bugs 時(shí)能升級(jí)它,或者給一些能更好工作的建議。

最后,這會(huì)歸并回到官方 Apache 文檔,這里只會(huì)留下一個(gè)到那里的鏈接。暫時(shí)我們還沒做到。
編譯支持 HTTP/2
在你編譯版本之前,你要進(jìn)行一些配置。這里有成千上萬的選項(xiàng)。和 HTTP/2 相關(guān)的是:

--enable-http2

啟用在 Apache 服務(wù)器內(nèi)部實(shí)現(xiàn)該協(xié)議的 ‘http2' 模塊。

--with-nghttp2=<dir>

指定 http2 模塊需要的 libnghttp2 模塊的非默認(rèn)位置。如果 nghttp2 是在默認(rèn)的位置,配置過程會(huì)自動(dòng)采用。

--enable-nghttp2-staticlib-deps

很少用到的選項(xiàng),你可能想將 nghttp2 庫(kù)靜態(tài)鏈接到服務(wù)器里。在大部分平臺(tái)上,只有在找不到共享 nghttp2 庫(kù)時(shí)才有用。

如果你想自己編譯 nghttp2,你可以到 nghttp2.org 查看文檔。最新的 Fedora 以及其它版本已經(jīng)附帶了這個(gè)庫(kù)。

TLS 支持
大部分人想在瀏覽器上使用 HTTP/2, 而瀏覽器只在使用 TLS 連接(https:// 開頭的 url)時(shí)才支持 HTTP/2。你需要一些我下面介紹的配置。但首先你需要的是支持 ALPN 擴(kuò)展的 TLS 庫(kù)。

ALPN 用來協(xié)商negotiate服務(wù)器和客戶端之間的協(xié)議。如果你服務(wù)器上 TLS 庫(kù)還沒有實(shí)現(xiàn) ALPN,客戶端只能通過 HTTP/1.1 通信。那么,可以和 Apache 鏈接并支持它的是什么庫(kù)呢?

OpenSSL 1.0.2 及其以后。
??? (別的我也不知道了)
如果你的 OpenSSL 庫(kù)是 Linux 版本自帶的,這里使用的版本號(hào)可能和官方 OpenSSL 版本的不同。如果不確定的話檢查一下你的 Linux 版本吧。

配置
另一個(gè)給服務(wù)器的好建議是為 http2 模塊設(shè)置合適的日志等級(jí)。添加下面的配置:

# 放在某個(gè)地方的這樣一行LoadModule http2_module modules/mod_http2.so<IfModule http2_module>  LogLevel http2:info</IfModule>
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 绩溪县| 宝丰县| 得荣县| 阜南县| 南丰县| 孝感市| 南投县| 读书| 嘉兴市| 姚安县| 昭平县| 太原市| 宜宾市| 七台河市| 茶陵县| 壤塘县| 莫力| 宝鸡市| 阿克苏市| 大名县| 四会市| 舒城县| 馆陶县| 清远市| 泰兴市| 全南县| 津市市| 安溪县| 天台县| 华宁县| 嵊泗县| 吉安市| 舒兰市| 霍城县| 江孜县| 克东县| 宁城县| 古交市| 民权县| 永定县| 资源县|