Skip to content

Instantly share code, notes, and snippets.

@zoghal
Forked from dlsniper/tutorial.md
Last active August 29, 2015 14:17
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zoghal/6111d89ab757921aa74f to your computer and use it in GitHub Desktop.
Save zoghal/6111d89ab757921aa74f to your computer and use it in GitHub Desktop.
export LANGUAGE="en_US.UTF-8" 
export LANG="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"
locale-gen en_US.UTF-8 
dpkg-reconfigure locales

apt-get install unzip libpcre3 libpcre3-dev libssl-dev libpcrecpp0 zlib1g-dev debhelper dh-systemd libgeoip-dev autotools-dev libgd2-noxpm-dev libluajit-5.1-dev libmhash-dev libpam0g-dev libperl-dev po-debconf libexpat-dev

add-apt-repository ppa:nginx/development

#modify the nginx file in sources.list.d in order to allow for deb-src to be active
/etc/apt/sources.list.d/nginx-development-precise.list #Ubuntu 12.04
/etc/apt/sources.list.d/nginx-development-trusty.list #Ubuntu 14.04

apt-get update

mkdir -p /opt/nginx/sources
cd /opt/nginx/sources
apt-get source nginx=1.7.6

mkdir -p /opt/nginx/modules/
cd /opt/nginx/modules/

wget -O ngx_devel_kit-v0.2.19.tar.gz https://github.com/simpl/ngx_devel_kit/archive/v0.2.19.tar.gz
tar -zxf ngx_devel_kit-v0.2.19.tar.gz

wget -O set-misc-nginx-module-v0.26.tar.gz https://github.com/openresty/set-misc-nginx-module/archive/v0.26.tar.gz
tar -zxf set-misc-nginx-module-v0.26.tar.gz

wget -O srcache-nginx-module-v0.28.tar.gz https://github.com/openresty/srcache-nginx-module/archive/v0.28.tar.gz
tar -zxf srcache-nginx-module-v0.28.tar.gz

wget -O memc-nginx-module-v0.15.tar.gz https://github.com/openresty/memc-nginx-module/archive/v0.15.tar.gz
tar -zxf memc-nginx-module-v0.15.tar.gz

export LUAJIT_LIB=/usr/lib/x86_64-linux-gnu/
export LUAJIT_INC=/usr/include/luajit-2.0

cd /opt/nginx/sources/nginx-1.7.6/

vim debian/rules
## CHANGE full_configure_flags with this:
    $(common_configure_flags) \
    --with-http_addition_module \
    --with-http_dav_module \
    --with-http_geoip_module \
    --with-http_gzip_static_module \
    --with-http_image_filter_module \
    --with-http_secure_link_module \
    --with-http_spdy_module \
    --with-http_sub_module \
    --with-http_xslt_module \
    --with-mail \
    --with-mail_ssl_module \
    --with-http_ssl_module \
    --with-http_stub_status_module \
    --add-module=/opt/nginx/modules/ngx_devel_kit-0.2.19 \
    --add-module=/opt/nginx/modules/set-misc-nginx-module-0.26 \
    --add-module=/opt/nginx/modules/memc-nginx-module-0.15 \
    --add-module=/opt/nginx/modules/srcache-nginx-module-0.28 \
    --add-module=$(MODULESDIR)/headers-more-nginx-module \
    --add-module=$(MODULESDIR)/nginx-auth-pam \
    --add-module=$(MODULESDIR)/nginx-cache-purge \
    --add-module=$(MODULESDIR)/nginx-dav-ext-module \
    --add-module=$(MODULESDIR)/nginx-echo \
    --add-module=$(MODULESDIR)/nginx-http-push \
    --add-module=$(MODULESDIR)/nginx-lua \
    --add-module=$(MODULESDIR)/nginx-upload-progress \
    --add-module=$(MODULESDIR)/nginx-upstream-fair \
    --add-module=$(MODULESDIR)/ngx_http_substitutions_filter_module


vim debian/changelog
### PREPEND this:
nginx (1.7.6-1+precise2) precise; urgency=high      

  * My custom build
  * Added extra modules to full package:
    --with-http_secure_link_module \
    --with-http_ssl_module \
    --with-http_stub_status_module \
    --add-module=/opt/nginx/modules/ngx_devel_kit-0.2.19 \
    --add-module=/opt/nginx/modules/set-misc-nginx-module-0.26 \
    --add-module=/opt/nginx/modules/memc-nginx-module-0.15 \
    --add-module=/opt/nginx/modules/srcache-nginx-module-0.28 \
    --add-module=$(MODULESDIR)/headers-more-nginx-module \
    --add-module=$(MODULESDIR)/nginx-cache-purge \
    --add-module=$(MODULESDIR)/nginx-http-push \
    --add-module=$(MODULESDIR)/nginx-lua \
    --add-module=$(MODULESDIR)/nginx-upload-progress \

 -- Florin Patan  Mon, 06 Oct 2014 15:53:00 +0100


vim debian/control
## CHANGE under nginx-full and nginx-full-dbg
Depends: nginx-common (= ${source:Version}), ${misc:Depends}, ${perl:Depends}, ${shlibs:Depends}

dpkg-buildpackage -b

cd ../ && ls -alh .
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment