要開啟http/2協議支援,需要在nginx 1.10以上版本並且需要openssl庫的版本在1.0.2以上編譯。
http 2.0只支援開啟了https的**。
檢視當前openssl版本
需要openssl庫的版本在1.0.2以上
openssl version
可以看到我這裡的版本正好是1.0.2 滿足要求。
nginx version: nginx/1.14.1
built by gcc 4.8.5 20150623 (red hat 4.8.5-36) (gcc)
built with openssl 1.0.2k-fips 26 jan 2017
http_v2_module
檢視nginx原有的模組
/opt/software/nginx/sbin/nginx -v
可以看到已安裝的模組
configure arguments: --prefix=/opt/software/nginx --with-http_stub_status_module --with-http_ssl_module
切換到原始碼包下(下面的路徑是)
cd /opt/software/nginx-1.14.1
編譯在原來的模組的基礎上
./configure --prefix=/opt/software/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module
執行上面的命令即可,等配置完
配置完成後,執行命令
make
這裡不要進行make install
,否則就是覆蓋安裝。
然後備份原有已安裝好的nginx
cp /opt/software/nginx/sbin/nginx /opt/software/nginx/sbin/nginx.bak
這個時候nginx要停止狀態:
檢視程序,找到 nginx master的程序。
ps -ef |
grep nginx
關閉 nginx master 程序,注意修改下面pid的引數。
kill -quit [nginx master pid]
然後將剛剛編譯好的 nginx 覆蓋掉原有的 nginx
cd /opt/software/nginx-1.14.1
cp ./objs/nginx /opt/software/nginx/sbin/
檢視安裝模組
cd /opt/software/nginx/sbin
./nginx -v
開啟http2服務非常簡單,只需要在埠443後面新增http2即可。
server
驗證
可在下面**進行驗證是否配置成功
nginx 1 9 支援http2 協議
最近公升級了下nginx,發現原本的spdy支援被移除了,支援http2了。這個是非常好的訊息呢。於是直接編譯安裝了下。編譯引數 增加了統計和 realip和 http2模組 非常簡單替換之前的spdy成 http2 即可 重啟服務即可 有 提供http2 測試。還有 專門演示了下http2的效果 ...
公升級nginx以支援http2
相比 http 1.x,http 2 在底層傳輸做了很大的改動和優化 http 2 採用二進位制格式傳輸資料,而非 http 1.x 的文字格式。二進位制格式在協議的解析和優化擴充套件上帶來更多的優勢和可能。http 2 對訊息頭採用 hpack 進行壓縮傳輸,能夠節省訊息頭占用的網路的流量。而 h...
公升級HTTP 2協議
首先只有使用https協議的站點可以公升級http 2協議 nginx如果想要公升級http 2需要滿足以下要求 nginx版本要高於1.9.5 with http ssl module 跟 with http v2 module 必帶 因為http2.0協議需要使用https協議。yum inst...