Our repository supports CentOS (RHEL) 6, 7 and 8. It’s powered by a CDN, well maintained with recent stable NGINX and module versions. We have built it with stability and automation in mind.
The packages are built automatically within 24 hours of NGINX and each module’s official source releases! That means you always get the latest, most secure packages available for install.
A quick shortcut command for CentOS / RHEL will get you up and running with the repository:
yum install https://extras.getpagespeed.com/release-el$(rpm -E %{rhel})-latest.rpm
Alternatively, use the following specific commands to install the repository config.
sudo yum -y install https://extras.getpagespeed.com/release-el6-latest.rpm
sudo yum -y install https://extras.getpagespeed.com/release-el7-latest.rpm
sudo dnf -y install https://extras.getpagespeed.com/release-el8-latest.rpm
In order to be able to install packages from the repository, you have to activate subscription by following this link.
Our repository signs both RPM packages and repository metadata with our GPG signature. So you know you’re getting the genuine builds.
By default, yum
will only check signatures on packages themselves. You can also instruct it to check the signature of the repository’s metadata. To do this, run:
sed -i 's@repo_gpgcheck=.*@repo_gpgcheck=1@' /etc/yum.repos.d/getpagespeed-extras.repo
Worth noting that in RHEL 8+, dnf config-manager
grew smart enough to handle wildcards so it’s cleaner to use:
dnf config-manager --setopt repo_gpgcheck=1 "getpagespeed-*" --save
At present, our repository is most complete with packages for RHEL 7 / CentOS 7 platform. For a comprehensive list of what you can install, have a look at:
RHEL 6 / CentOS 6 has still got some love (mostly for x86_64
arch), but quite less than CentOS 7.
RHEL 8 / CentOS 8 is already supported with build NGINX PageSpeed module. It can already be used on RHEL 8 and more NGINX modules will be built upon release of CentOS 8.
List of some of the most interesting packages follows. In the tables below the package names are hyperlinked with either relevant tutorial by GetPageSpeed, when available, or project’s homepage.
We provide stable nginx build plus many dynamic nginx modules built for it. That means you can install just the bare minimum nginx, or extend it heavily with the extra modules, without going through the hassle of compiling and maintaining fresh and secure versions of the modules or nginx itself.
Even more, for those who like to live on the edge, we have nginx-mod drop-in replacement, which is basically an nginx with latest OpenSSL compiled in and Cloudflare patches for improving performance further.
Some of the interesting modules you can install are:
Package Name | Description |
---|---|
nginx-module-pagespeed | Google PageSpeed for NGINX |
nginx-module-security | ModSecurity connector for NGINX |
nginx-module-headers-more | Set, add, and clear arbitrary output headers in NGINX http servers |
nginx-module-auth-pam | HTTP PAM authentication module |
nginx-module-fancyindex | Generation of file listings, like the built-in autoindex module does, but adding a touch of style |
nginx-module-nbr | Brotli compression for NGINX |
nginx-module-jpeg | Adds overlays (e.g. a logo, visual watermark) on JPEGs when they are requested |
The above table is just for a few of utmost interest for me. But there are actually more than 35+ modules available. You can get the complete list here or simply run yum search nginx-module
.
Sure enough, you don’t have to install all of the modules. E.g. to install NGINX stable with PageSpeed and Brotli modules:
yum install nginx nginx-module-pagespeed nginx-module-nbr
A mini-FAQ for our NGINX packages goes here:
You do not need to install RPM repository from nginx.org/packages.
The GetPageSpeed repository includes both nginx and dynamic modules for it.
You can submit NGINX modules for continuous build in our system here.
The modules are rebuilt with every module and NGINX release, within 24 hrs.
Compares very well, my friend 🙂 With cache purge module, PageSpeed and ModSecurity packages being built here – you get the easy-to-install and feature-rich NGINX that is closely equivalent to NGINX Plus which costs a lot more.
Varnish 4.1 and Varnish modules collection are available from our repository by default.
Package Name | Description |
---|---|
vmod-basicauth | Basic HTTP authentication |
vmod-binlog | Writing binary log files from Varnish VCL scripts |
vmod-dbrw | Database-driven rewrites |
vmod-dict | Dictionary look-up |
vmod-variable | Enhanced variable support for VCL |
vmod-sql | SQL access for Varnish Cache |
varnish-modules | Collection of: cookie, vsthrottle, header, saintmode, softpurge, tcp, var, xkey |
varnish-agent |
E.g. to install Varnish 4.1, varnish-modules
and GeoIP 2 VMODs:
yum install varnish varnish-modules vmod-geoip2
Varnish 6.0 LTS and vast array of VMODs for it are available in optional Varnish 6.0 repository.
Package Name | Description |
---|---|
vmod-basicauth | Basic HTTP authentication |
vmod-binlog | Enhanced variable support for VCL scripts |
vmod-dbrw | Database-driven rewrites |
vmod-dict | Dictionary look-up |
vmod-selector | Matching strings associated with backends, regexen and other strings |
vmod-re2 | Access the Google RE2 regular expression engine |
vmod-sql | SQL access for Varnish Cache |
vmod-tbf | Token bucket filtering |
vmod-geoip2 | GeoIP2 |
vmod-rfc6052 | RFC6052 |
vmod-memcached | Access memcached servers from VCL |
vmod-digest | libmhash support for Varnish VCL |
vmod-xcounter | Custom Counters |
vmod-geoip | GeoIP |
vmod-curl | cURL bindings |
vmod-querystring | Fine-grained control over a URL’s query-string |
vmod-variable | Enhanced variable support for VCL scripts |
varnish-modules | Collection of: cookie, vsthrottle, header, saintmode, softpurge, tcp, var, xkey |
To install Varnish and modules, install main repo and yum-utils
, then enable the optional repository e.g.:
yum -y install https://extras.getpagespeed.com/release-el7-latest.rpm yum-utils
yum-config-manager --enable getpagespeed-extras-varnish60
Then you can install Varnish 6.0 and the VMODs you need, e.g.:
yum install varnish vmod-geoip2
Monit is great for watching over your system’s services. We are building RPMs for the latest versions of Monit with all the great new features like IPv6 support.
The Fail2ban 0.10 started supporting IPv6. That means it’s more useful on dual-stack machines. However, EPEL for CentOS/RedHat 7 only delivers the 0.9 older release which lacks on IPv6 support. We have repackaged the new 0.10 version.
Papertrail‘s remote_syslog2
package is included in our repository for easy setup.
Install yum-plugin-changelog
and you will be able to see the changelog of packages. E.g. to list 2 last changelog entries for nginx Brotli package, run:
yum changelog 2 nginx-module-nbr
We continuously monitor GitHub for new nginx or Varnish modules. If you’ve authored a useful performance software – let us know about so we can build and package it 🙂