#!/bin/bash set -o errexit clear # Set versions. Check http://openresty.org for latest version and bundled version of nginx. OPENRESTY_VERSION=1.9.3.1 NGINX_VERSION=1.9.3 OPENSSL_VERSION=1.0.2d NPS_VERSION=1.9.32.10 # Install some pre-requisites yum install -y readline-devel pcre perl pcre-devel gcc zlib-devel patch unzip gcc-c++ make # Get OpenResty cd /usr/local/src/ wget http://openresty.org/download/ngx_openresty-${OPENRESTY_VERSION}.tar.gz tar vxf ngx_openresty-${OPENRESTY_VERSION}.tar.gz # Get OpenSSL wget https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz tar vxf openssl-${OPENSSL_VERSION}.tar.gz # Patch Nginx to provide HTTP/2 support cd /usr/local/src/ngx_openresty-${OPENRESTY_VERSION}/bundle/nginx-${NGINX_VERSION} wget http://nginx.org/patches/http2/patch.http2.txt # Test patch patch -p1 --dry-run < patch.http2.txt # Apply patch patch -p1 < patch.http2.txt # Get pagespeed wget https://github.com/pagespeed/ngx_pagespeed/archive/release-${NPS_VERSION}-beta.zip unzip release-${NPS_VERSION}-beta.zip cd ngx_pagespeed-release-${NPS_VERSION}-beta/ wget https://dl.google.com/dl/page-speed/psol/${NPS_VERSION}.tar.gz tar -xzvf ${NPS_VERSION}.tar.gz # extracts to psol/ # Now we can build OpenResty / Nginx. cd /usr/local/src/ngx_openresty-${OPENRESTY_VERSION} ./configure --with-http_ssl_module \ --with-luajit \ --with-openssl=/usr/local/src/openssl-${OPENSSL_VERSION} \ --with-http_v2_module \ --add-module=build/nginx-${NGINX_VERSION}/ngx_pagespeed-release-${NPS_VERSION}-beta make && make install # Check install. /usr/local/openresty/nginx/sbin/nginx -t /usr/local/openresty/nginx/sbin/nginx -V