njs Scripting Language

njs is an NGINX module that extends the server’s functionality through JavaScript scripting, enabling the creation of custom server-side logic and more.

  1. Check the Technical Specifications page to verify that the module is supported by your operating system.

  2. Make sure that your operating system is configured to retrieve binary packages from the official NGINX Plus repository. See installation instructions for your operating system on the Installing NGINX Plus page.

  3. Install the njs module package nginx-plus-module-njs from the official NGINX Plus repository.

    For Amazon Linux 2, CentOS, Oracle Linux, and RHEL:

    shell
    sudo yum update && \
    sudo yum install nginx-plus-module-njs

    For Amazon Linux 2023, AlmaLinux, Rocky Linux:

    shell
    sudo dnf update && \
    sudo dnf install nginx-plus-module-njs

    For Debian and Ubuntu:

    shell
    sudo apt update && \
    sudo apt install nginx-plus-module-njs

    For SLES:

    shell
    sudo zypper refresh && \
    sudo zypper install nginx-plus-module-njs

    For Alpine:

    apk add nginx-plus-module-njs

    For FreeBSD:

    shell
    sudo pkg update && \
    sudo pkg install nginx-plus-module-njs

After installation you will need to enable and configure the module in F5 NGINX Plus configuration file nginx.conf.

  1. Enable dynamic loading of njs modules with the load_module directives specified in the top-level (“main”) context:

    nginx
    load_module modules/ngx_http_js_module.so;
    load_module modules/ngx_stream_js_module.so;
    
    http {
        # ...
    }
    
    stream {
        # ...
    }
  2. Perform additional configuration as required by the module.

  3. Test the NGINX Plus configuration. In a terminal, type-in the command:

    nginx -t

    Expected output of the command:

    shell
    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf is successful
  4. Reload the NGINX Plus configuration to enable the module:

    nginx -s reload