How to install nginx (aarch64)
High performance web server
Install
sudo yum -y install https://extras.getpagespeed.com/release-latest.rpm sudo amazon-linux-extras install epel sudo yum -y install nginx
Description
nginx [engine x] is an HTTP and reverse proxy server, as well as a mail proxy server.
Architecture
Optimized for aarch64 (ARM64) architecture. It can be used on AWS Graviton instances, as well as Raspberry Pi 4 and newer.
RPMs
| Package | Size | Changelog |
|---|---|---|
| nginx-1.30.2-58.amzn2.gps.aarch64 | 1018 KiB |
Danila Vershinin (2026-06-11) - gps_license: bump to 1.3.0. New FOOTER enforcement tier: when the · backend pushes enforcement=footer (or it is set locally), unlicensed · text/html responses get a small fixed-position GetPageSpeed notice · appended; the site stays fully up and the notice disappears once a · valid license token is installed. Default enforcement remains soft; · hard/503 stays reserved for revoked tokens. Filter registers in the · AUX slot so it runs before gzip. |
| nginx-1.30.2-57.amzn2.gps.aarch64 | 1018 KiB |
Danila Vershinin (2026-05-31) - gps_license: bump to 1.2.0. Operator-facing 503s now point at · /nginx-license-token/ |
| nginx-1.30.2-56.amzn2.gps.aarch64 | 1017 KiB |
Danila Vershinin (2026-05-31) - gps_license: bump to 1.2.0. Operator-facing 503s now point at · /nginx-license-token/ |
| nginx-1.30.2-55.amzn2.gps.aarch64 | 1016 KiB |
Danila Vershinin (2026-05-25) - Recall the 2026-04-22 nginx-mod leak: Obsoletes nginx-mod = 3:1.30.0-44 so · hosts that were silently swapped to that exact build during the main-channel · slip self-heal back to stock nginx on `dnf upgrade`. Scoped to the one leaked · NVR (no-op otherwise); no matching Provides (would trip the module Conflicts). |
| nginx-1.30.2-54.amzn2.gps.aarch64 | 1016 KiB |
Danila Vershinin (2026-05-18) - Bundle nginx-gps SELinux policy: allow outbound HTTPS from httpd_t · (license reporting + future integrations) and bind UDP 443 for HTTP/3. · Paired with `semanage port -a -t http_port_t -p udp 443` in %post for · EL <= 9 where the UDP label is missing. |
| nginx-1.30.2-53.amzn2.gps.aarch64 | 1016 KiB |
Danila Vershinin (2026-05-18) - Bundle nginx-gps SELinux policy: allow outbound HTTPS from httpd_t · (license reporting + future integrations) and bind UDP 443 for HTTP/3. · Paired with `semanage port -a -t http_port_t -p udp 443` in %post for · EL <= 9 where the UDP label is missing. |
| nginx-1.30.1-53.amzn2.gps.aarch64 | 1016 KiB |
Danila Vershinin (2026-05-18) - Bundle nginx-gps SELinux policy: allow outbound HTTPS from httpd_t · (license reporting + future integrations) and bind UDP 443 for HTTP/3. · Paired with `semanage port -a -t http_port_t -p udp 443` in %post for · EL <= 9 where the UDP label is missing. |
| nginx-1.30.1-52.amzn2.gps.aarch64 | 1012 KiB |
Danila Vershinin (2026-05-05) - gps_license: bump to 1.1.1 (host telemetry: distro/arch/package_source). · - gps_license: enable on RHEL >= 8 and Amazon Linux >= 2 (was Fedora / · SUSE / EL7 only). Pass package_source=nginx_rpm via cc_opt. |
| nginx-1.30.1-51.amzn2.gps.aarch64 | 1012 KiB |
Danila Vershinin (2026-05-05) - gps_license: bump to 1.1.1 (host telemetry: distro/arch/package_source). · - gps_license: enable on RHEL >= 8 and Amazon Linux >= 2 (was Fedora / · SUSE / EL7 only). Pass package_source=nginx_rpm via cc_opt. |
| nginx-1.30.0-51.amzn2.gps.aarch64 | 1012 KiB |
Danila Vershinin (2026-05-05) - gps_license: bump to 1.1.1 (host telemetry: distro/arch/package_source). · - gps_license: enable on RHEL >= 8 and Amazon Linux >= 2 (was Fedora / · SUSE / EL7 only). Pass package_source=nginx_rpm via cc_opt. |
| nginx-1.30.0-50.amzn2.gps.aarch64 | 1010 KiB |
Danila Vershinin (2026-04-19) - Preserve cross-variant nginx service enabled/active state across upgrades · (scan nginx.service and angie.service in %pretrans, restore in %posttrans) |
| nginx-1.30.0-49.amzn2.gps.aarch64 | 1008 KiB |
Danila Vershinin (2026-03-18) - gps_license: mark reporting timer as cancelable to fix stuck workers after reload |