Skip to content

Instantly share code, notes, and snippets.

@maszd
Forked from tollmanz/compile-nginx.sh
Created April 3, 2017 13:18
Show Gist options
  • Select an option

  • Save maszd/68cad551c1502eea478ebcb045d3328e to your computer and use it in GitHub Desktop.

Select an option

Save maszd/68cad551c1502eea478ebcb045d3328e to your computer and use it in GitHub Desktop.

Revisions

  1. @tollmanz tollmanz revised this gist Apr 8, 2014. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions compile-nginx.sh
    Original file line number Diff line number Diff line change
    @@ -9,8 +9,8 @@ mkdir -p ~/sources/ && \

    # Compile against OpenSSL to enable NPN
    cd ~/sources && \
    wget http://www.openssl.org/source/openssl-1.0.1e.tar.gz && \
    tar -xzvf openssl-1.0.1e.tar.gz && \
    wget http://www.openssl.org/source/openssl-1.0.1g.tar.gz && \
    tar -xzvf openssl-1.0.1g.tar.gz && \

    # Download the Cache Purge module
    cd ~/sources/ && \
    @@ -77,7 +77,7 @@ cd nginx-1.5.12 && \
    --with-ld-opt='-Wl,-z,relro -Wl,--as-needed' \
    --with-ipv6 \
    --with-debug \
    --with-openssl=$HOME/sources/openssl-1.0.1e \
    --with-openssl=$HOME/sources/openssl-1.0.1g \
    --add-module=$HOME/sources/ngx_pagespeed-1.7.30.4-beta \
    --add-module=$HOME/sources/ngx_cache_purge && \

  2. @tollmanz tollmanz revised this gist Mar 22, 2014. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion compile-nginx.sh
    Original file line number Diff line number Diff line change
    @@ -5,7 +5,7 @@
    # * zlib1g zlib1g-dbg zlib1g-dev: required for HTTP gzip module
    apt-get install checkinstall libpcre3 libpcre3-dev zlib1g zlib1g-dbg zlib1g-dev && \

    mkdir ~/sources/ && \
    mkdir -p ~/sources/ && \

    # Compile against OpenSSL to enable NPN
    cd ~/sources && \
  3. @tollmanz tollmanz revised this gist Mar 22, 2014. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions compile-nginx.sh
    Original file line number Diff line number Diff line change
    @@ -77,8 +77,8 @@ cd nginx-1.5.12 && \
    --with-ld-opt='-Wl,-z,relro -Wl,--as-needed' \
    --with-ipv6 \
    --with-debug \
    --with-openssl=$HOME/sources/openssl-1.0.1e && \
    --add-module=$HOME/sources/ngx_pagespeed-1.7.30.4-beta && \
    --with-openssl=$HOME/sources/openssl-1.0.1e \
    --add-module=$HOME/sources/ngx_pagespeed-1.7.30.4-beta \
    --add-module=$HOME/sources/ngx_cache_purge && \

    # Make the package.
  4. @tollmanz tollmanz revised this gist Mar 22, 2014. 1 changed file with 19 additions and 5 deletions.
    24 changes: 19 additions & 5 deletions compile-nginx.sh
    Original file line number Diff line number Diff line change
    @@ -6,21 +6,33 @@
    apt-get install checkinstall libpcre3 libpcre3-dev zlib1g zlib1g-dbg zlib1g-dev && \

    mkdir ~/sources/ && \
    cd ~/sources && \

    # Compile against OpenSSL to enable NPN
    cd ~/sources && \
    wget http://www.openssl.org/source/openssl-1.0.1e.tar.gz && \
    tar -xzvf openssl-1.0.1e.tar.gz && \

    # Download the Cache Purge module
    cd ~/sources/ && \
    git clone https://github.com/FRiCKLE/ngx_cache_purge.git && \
    cd ~/sources && \

    # Download PageSpeed
    cd ~/sources && \
    wget https://github.com/pagespeed/ngx_pagespeed/archive/v1.7.30.4-beta.zip && \
    unzip v1.7.30.4-beta.zip && \
    cd ngx_pagespeed-1.7.30.4-beta && \
    wget https://dl.google.com/dl/page-speed/psol/1.7.30.4.tar.gz && \
    tar -xzvf 1.7.30.4.tar.gz && \

    # Get the Nginx source.
    #
    # Best to get the latest mainline release. Of course, your mileage may
    # vary depending on future changes
    cd ~/sources/ && \
    wget http://nginx.org/download/nginx-1.5.10.tar.gz && \
    tar zxf nginx-1.5.10.tar.gz && \
    cd nginx-1.5.10 && \
    wget http://nginx.org/download/nginx-1.5.12.tar.gz && \
    tar zxf nginx-1.5.12.tar.gz && \
    cd nginx-1.5.12 && \

    # Configure nginx.
    #
    @@ -66,6 +78,8 @@ cd nginx-1.5.10 && \
    --with-ipv6 \
    --with-debug \
    --with-openssl=$HOME/sources/openssl-1.0.1e && \
    --add-module=$HOME/sources/ngx_pagespeed-1.7.30.4-beta && \
    --add-module=$HOME/sources/ngx_cache_purge && \

    # Make the package.
    make && \
    @@ -77,4 +91,4 @@ make && \
    checkinstall --install=no -y && \

    # Install the package.
    dpkg -i nginx_1.5.10-1_amd64.deb
    dpkg -i nginx_1.5.12-1_amd64.deb
  5. @tollmanz tollmanz revised this gist Feb 16, 2014. 1 changed file with 41 additions and 25 deletions.
    66 changes: 41 additions & 25 deletions compile-nginx.sh
    Original file line number Diff line number Diff line change
    @@ -1,26 +1,36 @@
    mkdir ~/sources/
    cd ~/sources
    # Install dependencies
    #
    # * checkinstall: package the .deb
    # * libpcre3, libpcre3-dev: required for HTTP rewrite module
    # * zlib1g zlib1g-dbg zlib1g-dev: required for HTTP gzip module
    apt-get install checkinstall libpcre3 libpcre3-dev zlib1g zlib1g-dbg zlib1g-dev && \

    wget https://github.com/pagespeed/ngx_pagespeed/archive/v1.7.30.3-beta.zip
    unzip v1.7.30.3-beta.zip
    cd ngx_pagespeed-1.7.30.3-beta
    wget https://dl.google.com/dl/page-speed/psol/1.7.30.3.tar.gz
    tar -xzvf 1.7.30.3.tar.gz
    mkdir ~/sources/ && \
    cd ~/sources && \

    cd ~/sources/
    git clone https://github.com/FRiCKLE/ngx_cache_purge.git
    # Compile against OpenSSL to enable NPN
    cd ~/sources && \
    wget http://www.openssl.org/source/openssl-1.0.1e.tar.gz && \
    tar -xzvf openssl-1.0.1e.tar.gz && \

    cd ~/sources
    wget http://www.openssl.org/source/openssl-1.0.1e.tar.gz
    tar -xzvf openssl-1.0.1e.tar.gz
    cd ~/sources/
    wget http://nginx.org/download/nginx-1.5.9.tar.gz
    tar zxf nginx-1.5.9.tar.gz
    cd nginx-1.5.9

    wget http://nginx.org/patches/patch.spdy-v31.txt
    patch -p1 < patch.spdy-v31.txt
    # Get the Nginx source.
    #
    # Best to get the latest mainline release. Of course, your mileage may
    # vary depending on future changes
    cd ~/sources/ && \
    wget http://nginx.org/download/nginx-1.5.10.tar.gz && \
    tar zxf nginx-1.5.10.tar.gz && \
    cd nginx-1.5.10 && \

    # Configure nginx.
    #
    # This is based on the default package in Debian. Additional flags have
    # been added:
    #
    # * --with-debug: adds helpful logs for debugging
    # * --with-openssl=$HOME/sources/openssl-1.0.1e: compile against newer version
    # of openssl
    # * --with-http_spdy_module: include the SPDY module
    ./configure --prefix=/etc/nginx \
    --sbin-path=/usr/sbin/nginx \
    --conf-path=/etc/nginx/nginx.conf \
    @@ -55,10 +65,16 @@ patch -p1 < patch.spdy-v31.txt
    --with-ld-opt='-Wl,-z,relro -Wl,--as-needed' \
    --with-ipv6 \
    --with-debug \
    --with-openssl=$HOME/sources/openssl-1.0.1e \
    --add-module=$HOME/sources/ngx_pagespeed-1.7.30.3-beta \
    --add-module=$HOME/sources/ngx_cache_purge
    --with-openssl=$HOME/sources/openssl-1.0.1e && \

    # Make the package.
    make && \

    # Create a .deb package.
    #
    # Instead of running `make install`, create a .deb and install from there. This
    # allows you to easily uninstall the package if there are issues.
    checkinstall --install=no -y && \

    make
    checkinstall --install=no --review-control
    dpkg -i nginx_1.5.9-1_amd64.deb
    # Install the package.
    dpkg -i nginx_1.5.10-1_amd64.deb
  6. @tollmanz tollmanz revised this gist Feb 1, 2014. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion compile-nginx.sh
    Original file line number Diff line number Diff line change
    @@ -9,8 +9,8 @@ tar -xzvf 1.7.30.3.tar.gz

    cd ~/sources/
    git clone https://github.com/FRiCKLE/ngx_cache_purge.git
    cd ~/sources

    cd ~/sources
    wget http://www.openssl.org/source/openssl-1.0.1e.tar.gz
    tar -xzvf openssl-1.0.1e.tar.gz
    cd ~/sources/
  7. @tollmanz tollmanz created this gist Jan 28, 2014.
    64 changes: 64 additions & 0 deletions compile-nginx.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,64 @@
    mkdir ~/sources/
    cd ~/sources

    wget https://github.com/pagespeed/ngx_pagespeed/archive/v1.7.30.3-beta.zip
    unzip v1.7.30.3-beta.zip
    cd ngx_pagespeed-1.7.30.3-beta
    wget https://dl.google.com/dl/page-speed/psol/1.7.30.3.tar.gz
    tar -xzvf 1.7.30.3.tar.gz

    cd ~/sources/
    git clone https://github.com/FRiCKLE/ngx_cache_purge.git
    cd ~/sources

    wget http://www.openssl.org/source/openssl-1.0.1e.tar.gz
    tar -xzvf openssl-1.0.1e.tar.gz
    cd ~/sources/
    wget http://nginx.org/download/nginx-1.5.9.tar.gz
    tar zxf nginx-1.5.9.tar.gz
    cd nginx-1.5.9

    wget http://nginx.org/patches/patch.spdy-v31.txt
    patch -p1 < patch.spdy-v31.txt

    ./configure --prefix=/etc/nginx \
    --sbin-path=/usr/sbin/nginx \
    --conf-path=/etc/nginx/nginx.conf \
    --error-log-path=/var/log/nginx/error.log \
    --http-log-path=/var/log/nginx/access.log \
    --pid-path=/var/run/nginx.pid \
    --lock-path=/var/run/nginx.lock \
    --http-client-body-temp-path=/var/cache/nginx/client_temp \
    --http-proxy-temp-path=/var/cache/nginx/proxy_temp \
    --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp \
    --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp \
    --http-scgi-temp-path=/var/cache/nginx/scgi_temp \
    --user=www-data \
    --group=www-data \
    --with-http_ssl_module \
    --with-http_realip_module \
    --with-http_addition_module \
    --with-http_sub_module \
    --with-http_dav_module \
    --with-http_flv_module \
    --with-http_mp4_module \
    --with-http_gunzip_module \
    --with-http_gzip_static_module \
    --with-http_random_index_module \
    --with-http_secure_link_module \
    --with-http_stub_status_module \
    --with-mail \
    --with-mail_ssl_module \
    --with-file-aio \
    --with-http_spdy_module \
    --with-cc-opt='-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2' \
    --with-ld-opt='-Wl,-z,relro -Wl,--as-needed' \
    --with-ipv6 \
    --with-debug \
    --with-openssl=$HOME/sources/openssl-1.0.1e \
    --add-module=$HOME/sources/ngx_pagespeed-1.7.30.3-beta \
    --add-module=$HOME/sources/ngx_cache_purge

    make
    checkinstall --install=no --review-control
    dpkg -i nginx_1.5.9-1_amd64.deb