How to install nginx-module-device-type on AlmaLinux, Rocky Linux & RHEL
Device detection module for NGINX
Availability
| Distro | aarch64 | noarch | x86_64 | Version |
|---|---|---|---|---|
| RHEL 10 | ✓ | — | ✓ | 1.30.3+1.0.1 |
| RHEL 9 | ✓ | — | ✓ | 1.30.3+1.0.1 |
| RHEL 8 | ✓ | — | ✓ | 1.30.3+1.0.1 |
| RHEL 7 | ✓ | — | ✓ | 1.30.3+1.0.1 |
| RHEL 6 | — | — | — |
Description
Comprehensive device detection at the NGINX edge. Classifies HTTP requests by device type, browser, operating system, and bot classification using 3,600+ regex patterns. Exposed Variables (22 total): - Device type: $device_type (mobile/tablet/desktop/tv/console/car/wearable/camera/peripheral/bot) - Device booleans: $is_mobile, $is_tablet, $is_desktop, $is_bot, $is_tv, $is_console, $is_wearable - Device details: $device_brand, $device_model - Browser: $browser_name, $browser_version, $browser_family, $browser_engine - OS: $os_name, $os_version, $os_family - Bot: $bot_name, $bot_category, $bot_producer, $is_ai_crawler - JSON: $device_json (complete detection result) Key Features: - Client Hints support (Sec-CH-UA, Sec-CH-UA-Mobile, Sec-CH-UA-Platform) - AI crawler detection for 50+ AI bots (GPTBot, ClaudeBot, etc.) - Bot categorization: search_engine, ai_crawler, crawler, monitoring, scraper - Zero configuration: load module, use variables - All regexes compiled once at NGINX startup - Per-request caching prevents redundant detection - PCRE with JIT support for optimal performance To enable this module after installation, add the following to /etc/nginx/nginx.conf and reload NGINX: load_module modules/ngx_http_device_type_module.so; Alternatively, enable all installed modules by adding this line to the top of /etc/nginx/nginx.conf: include /usr/share/nginx/modules/*.conf;
Compatible with all RHEL-based distributions, including CentOS, AlmaLinux, Oracle Linux, Rocky Linux, etc.
Install
nginx-module-device-type on AlmaLinux / Rocky Linux / Oracle Linux / RHEL 8, 9, 10
sudo dnf -y install https://extras.getpagespeed.com/release-latest.rpm sudo dnf -y install nginx-module-device-type
nginx-module-device-type on CentOS 7 / RHEL 7
sudo yum -y install https://extras.getpagespeed.com/release-latest.rpm sudo yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm sudo yum -y install nginx-module-device-type
Package downloads require an active GetPageSpeed subscription — one repository for nginx-module-device-type and 3,000+ more packages across every maintained Enterprise Linux release.
Subscribe — from $10/moFrequently asked questions
How do I install nginx-module-device-type on AlmaLinux, Rocky Linux or RHEL?
Add the GetPageSpeed repository, then run: sudo dnf -y install nginx-module-device-type (use yum on EL7). The same package works on AlmaLinux, Rocky Linux, Oracle Linux, CentOS Stream and RHEL.
Which Enterprise Linux versions is nginx-module-device-type available for?
nginx-module-device-type is available for RHEL 7, 8, 9, 10 and the matching AlmaLinux, Rocky Linux and Oracle Linux releases.
Is nginx-module-device-type compatible with Rocky Linux, Oracle Linux and CentOS Stream?
Yes. The RPM is built for Enterprise Linux and is binary-compatible across all RHEL rebuilds of the same major version, including AlmaLinux, Rocky Linux, Oracle Linux and CentOS Stream.