nginx动态编译njs
看网上没啥人玩,记录一下。
踩了2个坑,一是需要xslt,二是pcre2, 主要看之前编译nginx用的那个pcre版本
大致流程
apt install libxml2-dev libxslt1-dev git curl libpcre2-dev
wget http://nginx.org/download/nginx-1.28.0.tar.gz
tar zxf nginx-1.28.0.tar.gz
cd nginx-1.28.0
git clone https://github.com/nginx/njs
./configure --with-compat --add-dynamic-module=./njs/nginx
make modules
cp objs/ngx_http_js_module.so /usr/lib/nginx/modules/ngx_http_js_module.so
echo "load_module modules/ngx_http_js_module.so;" > /etc/nginx/modules-enabled/50-mod-njs.conf
nginx -t
确定pcre版本
ldd /usr/sbin/nginx | grep pcre
njs确定加载后在http字段引入
http {
js_import my_ua.js;
}
location再调用写好的js内容就可以玩耍了
location / {
js_content my_ua.checkRequest;
}
直接官方仓库安装的就更简单了。



