摘要:了解協(xié)議的主要目標(biāo)是改進(jìn)傳輸性能,實(shí)現(xiàn)低延遲和高吞吐量。從另一方面看,的高層協(xié)議語義并不會(huì)因?yàn)檫@次版本升級而受影響。所有首部值,以及它們的使用場景都不會(huì)變。不用為了利用的好處而修改標(biāo)記。服務(wù)器必須運(yùn)行協(xié)議,但大部分用戶都不會(huì)因此而受到影響。
了解http2協(xié)議
HTTP 2.0 的主要目標(biāo)是改進(jìn)傳輸性能,實(shí)現(xiàn)低延遲和高吞吐量。從另一方面看,HTTP 的高層協(xié)議語義并不會(huì)因?yàn)檫@次版本升級而受影響。 所有HTTP 首部、值,以及它們的使用場景都不會(huì)變。
現(xiàn)有的任何網(wǎng)站和應(yīng)用,無需做任何修改都可以在HTTP 2.0 上跑起來。不用為了利用HTTP 2.0 的好處而修改標(biāo)記。HTTP 服務(wù)器必須運(yùn)行HTTP 2.0 協(xié)議,但大部分用戶都不會(huì)因此而受到影響
。
編譯nginx的http2模塊通過 `/usr/local/nginx/sbin/nginx -V
` (注意是大寫的V),查看當(dāng)前nginx是否支持http2:--with-http_v2_module
nginx version: nginx/1.14.0 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC) built with OpenSSL 1.0.2o 27 Mar 2018 TLS SNI support enabled configure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-http_sub_module --with-stream --with-stream_ssl_module --with-openssl=/usr/local/src/lnmp1.5/src/openssl-1.0.2o
如果沒有的話在編譯nginx時(shí)要加上這一行
./configure --user=www --group=www --with-http_v2_module --with-http_ssl_module --with-stream --with-openssl=./openssl-OpenSSL_1_1_0e --with-pcre=./pcre-8.40 --with-pcre-jit --with-zlib=./zlib-1.2.11 make && make install生成證書
可以參考我上一篇博文,申請免費(fèi)證書。也可以手動(dòng)生成一個(gè)偽證書
cd /usr/local/nginx/conf/ mkdir key && cd key openssl genrsa -des3 -out server.key 1024 openssl req -new -key server.key -out server.csr (根據(jù)提示隨意的輸入) openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
最終生成
[root@zhouzhou_01 key]# ll 總用量 8 -rw-r--r-- 1 root samba 0 6月 14 10:41 server.crt -rw-r--r-- 1 root samba 749 6月 14 10:41 server.csr -rw-r--r-- 1 root samba 963 6月 14 10:39 server.key配置nginx
主要配置段如下
server { listen 80; server_name site.com www.site.com; add_header Strict-Transport-Security max-age=31536000; return 301 https://www.site.com$request_uri; } server { listen 443 ssl http2; server_name www.site.com; root /var/www/html/site; index index.php index.html index.htm; access_log /var/log/dnmp/nginx.site.access.log main; error_log /var/log/dnmp/nginx.site.error.log warn; ssl on; ssl_certificate /etc/nginx/conf.d/certs/site/www.site.com.crt; ssl_certificate_key /etc/nginx/conf.d/certs/site/www.site.com.key; ssl_prefer_server_ciphers on; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4"; add_header Strict-Transport-Security max-age=31536000; }驗(yàn)證
使用Chrome訪問啟用http2的站點(diǎn)。
新開TAB頁,在地址欄中輸入chrome://net-internals/#http2,檢查HTTP/2 sessions下的表格。
確認(rèn)表格里是否出現(xiàn)了上一步訪問的主機(jī)地址。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/40477.html
現(xiàn)在瀏覽器里面很大一部分網(wǎng)頁還在使用HTTP1.1作為主要的網(wǎng)絡(luò)通信協(xié)議。 但,這傻逼協(xié)議是1999年弄出來的. 距今已經(jīng)有xx年了, 這些年里,美國的IETF 覺得這樣不行.我得出來拯救世界了, 在Chrome的倡導(dǎo)下, 借用Chrome的SPDY 來做為HTTP2的前身,即, HTTP2 是SPDY/3 draft的優(yōu)優(yōu)化版. 那,HTTP2 為什么要出現(xiàn),又解決了HTTP1.1不能解決的什...
摘要:消息與邏輯請求或響應(yīng)消息對應(yīng)的完整的一系列幀。聲明數(shù)據(jù)流依賴關(guān)系指出,應(yīng)盡可能先向父數(shù)據(jù)流分配資源,然后再向其依賴項(xiàng)分配資源。數(shù)據(jù)流應(yīng)先于和獲得完整資源分配和應(yīng)先于和獲得相同的資源分配和應(yīng)基于其權(quán)重獲得比例分配。 轉(zhuǎn)載自 | 小米運(yùn)維(公眾號 ID:MI-SRE)showImg(https://segmentfault.com/img/bVbbesG?w=344&h=344); HTT...
摘要:主要涉及到的協(xié)議以及的處理流程。并且中必須建立在協(xié)議之上。所以對協(xié)議的服務(wù)發(fā)起請求時(shí),一般瀏覽器會(huì)建立條連接,并行的去請求不同的資源。表明該字段是否使用了編碼。 運(yùn)營研發(fā) 張仕華 本文通過一個(gè)小例子串一遍nginx處理http2的流程。主要涉及到http2的協(xié)議以及nginx的處理流程。 http2簡介 http2比較http1.1主要有如下五個(gè)方面的不同: 二進(jìn)制協(xié)議 http1....
閱讀 1075·2023-04-26 02:02
閱讀 2416·2021-09-26 10:11
閱讀 3569·2019-08-30 13:10
閱讀 3758·2019-08-29 17:12
閱讀 731·2019-08-29 14:20
閱讀 2199·2019-08-28 18:19
閱讀 2245·2019-08-26 13:52
閱讀 969·2019-08-26 13:43