zoukankan      html  css  js  c++  java
  • CentOS 7配置nginx-1.13.10支持http/2和Server Push

    0、确保openssl版本大于1.0.2

    openssl version

    1、下载nginx-1.13.10

    wget http://nginx.org/download/nginx-1.13.10.tar.gz
    tar zxf nginx-1.13.10.tar.gz
    cd nginx-1.13.10

    2、确认并安装gcc等编译组件

    yum groupinstall "Development Tools" 
    yum install pcre* openssl* gd-devel* zlib-devel pcre-devel libpcre3 libpcre3-dev zlib1g-dev unzip git

    3、配置编译参数

    ./configure --user=nginx --group=nginx --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

    配置正常输出如下内容:

    Configuration summary
      + using system PCRE library
      + using system OpenSSL library
      + using system zlib library
    
      nginx path prefix: "/usr/local/nginx"
      nginx binary file: "/usr/local/nginx/sbin/nginx"
      nginx modules path: "/usr/local/nginx/modules"
      nginx configuration prefix: "/usr/local/nginx/conf"
      nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
      nginx pid file: "/usr/local/nginx/logs/nginx.pid"
      nginx error log file: "/usr/local/nginx/logs/error.log"
      nginx http access log file: "/usr/local/nginx/logs/access.log"
      nginx http client request body temporary files: "client_body_temp"
      nginx http proxy temporary files: "proxy_temp"
      nginx http fastcgi temporary files: "fastcgi_temp"
      nginx http uwsgi temporary files: "uwsgi_temp"
      nginx http scgi temporary files: "scgi_temp"

    4、编译

    make

    5、安装

    make install
    ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/nginx

    6、nginx配置参考(server配置段)

    server {
            listen       443 ssl http2 default_server;
            server_name  _;
            root         /usr/local/nginx/html;
    
            ssl_certificate "/usr/local/nginx/conf/server.crt";
            ssl_certificate_key "/usr/local/nginx/conf/server.key";
            ssl_session_cache shared:SSL:1m;
            ssl_session_timeout  10m;
            ssl_ciphers HIGH:!aNULL:!MD5;
            ssl_prefer_server_ciphers on;
    
    
            location /index.html {
                http2_push_preload on;
                http2_push /image.jpg;
            }
    
            error_page 404 /404.html;
                location = /40x.html {
            }
    
            error_page 500 502 503 504 /50x.html;
                location = /50x.html {
            }
        }

    7、准备证书与密钥文件(server.crt/server.key)

    8、检查并重启nginx

    nginx -t
    nginx -s reload

    9、用chrome访问配置好的页面

    并在chrome地址栏输入

    chrome://net-internals/#http2

    可以看到对应站点的http/2的session

    【参考资料】

    https://www.nginx.com/blog/nginx-1-13-9-http2-server-push/

  • 相关阅读:
    笔记本电脑处理器(CPU)性能排行榜
    SQL Server 2008管理工具出现 远程过程调用失败0x800706be解决方法
    Installshield使用教程
    区间DP--凸多边形三角剖分
    树形DP--codevs 1380 没有上司的舞会
    DP练习 巡逻
    DP练习 最长上升子序列nlogn解法
    线段树 求区间连乘——hdu 3074 Multiply game
    模拟算法+栈 HDU 1022
    并查集--CSUOJ 1601 War
  • 原文地址:https://www.cnblogs.com/imzye/p/8638842.html
Copyright © 2011-2022 走看看