Сценарный язык njs
njs - это подмножество языка JavaScript, позволяющее расширить функциональность nginx. njs совместим с ECMAScript 5.1 (строгий режим) c некоторыми расширениями ECMAScript 6 и позже. Совместимость находится в стадии развития.
- Загрузка и установка
- Изменения в njs
- Справочник
- Примеры использования
- Совместимость
- Интерфейс командной строки
Сценарии использования
- Комплексное управление доступом и проверка защиты при помощи njs до получения запроса сервером группы
- Управление заголовками ответа
- Создание гибких асинхронных обработчиков содержимого и фильтров
Подробнее о сценариях использования см. в примерах и блогпостах.
Базовый пример HTTP
Чтобы использовать njs в nginx, необходимо:
-
установить njs
-
создать файл сценария njs, например
hello_world.js. Описание свойств и методов языка njs см. в справочнике.function hello(r) { r.return(200, "Hello world!"); } -
в файле
nginx.confвключить модуль ngx_http_js_module и указать директиву js_include с файлом сценарияhello_world.js:load_module modules/ngx_http_js_module.so; events {} http { js_include hello_world.js; server { listen 8000; location / { js_content hello; } } }
Также доступна отдельная утилита командной строки, которая может использоваться независимо от nginx для разработки и отладки njs.
