Deprecated and no longer supported or maintained. See https://github.com/jcu-eresearch/nginx-dynamic-modules instead for how to build dynamic modules separately without needing to recompile nginx.
Important
This nginx build currently supports version 1.10.0+. Please see the
tags within this repository for previously supported versions
(v1.4.x
, v1.6.3
, v1.8.x
, etc).
This version of nginx is customised in a number of different ways:
Adds support for Shibboleth authentication for applications served by nginx using the nginx-http-shibboleth module. This requires a Shibboleth SP built with FastCGI support and correctly configured.
This is built as a dynamic module and deployable using its own RPM package.
Adds LDAP authentication for nginx using nginx-ldap-auth.
Has custom HTML XSLT transformation built in. This allows transformation of HTML documents on-the-fly via XSL (eg that which comes from Diazo for theming). Help support the patch being merged into nginx's core.
Has the
ngx-fancyindex
module for folder listings.Has the
ngx_ajp_module
module for talking to AJP backends.Has HTTP/2 support built
Has XLST support built.
See the build script for details of where these dependencies live.
Ensure Docker and Docker Compose are installed.
Run the following:
git clone https://github.com/jcu-eresearch/nginx-custom-build.git cd nginx-custom-build docker-compose up
Enjoy your new RPMs, available in the build/ directory.
If you're not into Docker, then you can manually run
https://github.com/jcu-eresearch/nginx-custom-build/blob/master/nginx-build.sh
on your own EL 6 machine, ensuring that you set up your build environment
first. You can follow the Dockerfile
and its RUN
commands. Otherwise, the build script is self-contained and
will automatically clone the latest patches from this GitHub repository.
The configuration in master
will always build the latest
stable version of nginx. Occasionally, mainline compatible versions will be
present; consult available branches.
It is also possible to select a specific version of nginx to build against by
setting the environment variable _NGINX_VERSION (such as
export _NGINX_VERSION=1.9.13
), which is used within the build script.
From Docker Compose, you can use the following:
docker-compose run -e _NGINX_VERSION=1.8.1 nginx-custom-build
- Thanks to Luca Bruno for taking my Shibboleth work and creating a full nginx module.
- Thanks to Laurence Rowe for the patches for making HTML transformations possible at https://bitbucket.org/lrowe/nginx-xslt-html-parser