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

首頁 > 網站 > Nginx > 正文

Nginx/Openresty中啟用http2支持的方法教程

2024-08-30 12:29:02
字體:
來源:轉載
供稿:網友

本文主要給大家介紹了關于Nginx/Openresty啟用http2支持的相關內容,在開始介紹之前,我們先來看一看什么是http2。

以下摘自http2的介紹:

HTTP/2 源自 SPDY/2

SPDY 系列協議由谷歌開發,于 2009 年公開。它的設計目標是降低 50% 的頁面加載時間。當下很多著名的互聯網公司,例如百度、淘寶、UPYUN 都在自己的網站或 APP 中采用了 SPDY 系列協議(當前最新版本是 SPDY/3.1),因為它對性能的提升是顯而易見的。主流的瀏覽器(谷歌、火狐、Opera)也都早已經支持 SPDY,它已經成為了工業標準,HTTP Working-Group 最終決定以 SPDY/2 為基礎,開發 HTTP/2。 

但是,HTTP/2 跟 SPDY 仍有不同的地方,主要是以下兩點:

  • HTTP/2 支持明文 HTTP 傳輸,而 SPDY 強制使用 HTTPS 
  • HTTP/2 消息頭的壓縮算法采用 HPACK,而非 SPDY 采用的 DEFLATE 

HTTP/2 的優勢

相比 HTTP/1.x,HTTP/2 在底層傳輸做了很大的改動和優化:

HTTP/2 采用二進制格式傳輸數據,而非 HTTP/1.x 的文本格式。二進制格式在協議的解析和優化擴展上帶來更多的優勢和可能。 
HTTP/2 對消息頭采用 HPACK 進行壓縮傳輸,能夠節省消息頭占用的網絡的流量。而 HTTP/1.x 
每次請求,都會攜帶大量冗余頭信息,浪費了很多帶寬資源。頭壓縮能夠很好的解決該問題。 多路復用,直白的說就是所有的請求都是通過一個 TCP 連接并發完成。HTTP/1.x 雖然通過 pipeline 也能并發請求,但是多個請求之間的響應會被阻塞的,所以 pipeline 至今也沒有被普及應用,而 HTTP/2 做到了真正的并發請求。同時,流還支持優先級和流量控制。

Server Push:服務端能夠更快的把資源推送給客戶端。例如服務端可以主動把 JS 和 CSS 文件推送給客戶端,而不需要客戶端解析 HTML 再發送這些請求。當客戶端需要的時候,它已經在客戶端了。 HTTP/2 主要是 HTTP/1.x 在底層傳輸機制上的完全重構,HTTP/2 是基本兼容 HTTP/1.x 的語義的(詳細兼容性說明請戳這里)。Content-Type 仍然是 Content-Type,只不過它不再是文本傳輸了。 

Openresty/Nginx默認是不支持http2的,需要將http2模塊編譯進應用中。

下面我們以Openresty為例,介紹編譯步驟.

下載openssl-1.0.2l

wget https://www.openssl.org/source/openssl-1.0.2l.tar.gz tar -zxvf openssl-1.0.2l.tar.gz 

生成編譯信息

./configure --with-http_v2_module --with-openssl=/openssl-1.0.2l

執行編譯

make make install 

如果不報錯,則編譯成功。

下面來修改nginx配置文件,重點就是在啟用443 ssl的地方啟用http2. 如下:

server {  listen 443 ssl http2; ..........}

執行reload,打開網頁驗證是否成功。

如果感覺編譯麻煩,可以使用我已經編譯好的openresty:

vikings/openresty:http2 

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 盐亭县| 郎溪县| 浦城县| 德庆县| 吉首市| 景洪市| 双桥区| 徐闻县| 鄢陵县| 临邑县| 嘉荫县| 沽源县| 嘉定区| 万源市| 迭部县| 武宁县| 同江市| 新营市| 图木舒克市| 郑州市| 鄢陵县| 澄迈县| 临清市| 临夏县| 呼伦贝尔市| 依兰县| 麟游县| 伊金霍洛旗| 呼伦贝尔市| 沐川县| 深水埗区| 武强县| 稷山县| 武山县| 樟树市| 金溪县| 黄山市| 蓬安县| 炎陵县| 凤山县| 北流市|