#!/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 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment