Cómo instalar y habilitar el módulo ngx_http_limit_req_module nginx en Ubuntu bionic

Cómo instalar y habilitar el módulo ngx_http_limit_req_module nginx en Ubuntu bionic

Necesito instalar ngx_http_limit_req_modulefor nginx en Ubuntu Bionic.

Encuentro ejemplos de configuración en todas partes, pero NO encuentro cómo instalarlo ni dónde consigo esto como módulo prediseñado. Si miro las fuentes en gitlab, las encuentro en el modules/directorio, pero si las ejecuto nginx -Vno están allí. También uso el repositorio proporcionado de nginx-stable ( https://nginx.org/packages/ubuntu/ bionic nginx), pero preferiría el paquete nginx del repositorio biónico predeterminado.

Soy bastante nuevo en el ecosistema nginx, por lo que agradecería mucho la ayuda.

¿O ya está compilado y es tan obvio para todos (excepto para mí) que no se muestra cuando se ejecuta nginx -V?

Muchas gracias de antemano :)

Respuesta1

Lo probé ahora y funciona desde el primer momento. Al menos con el paquete nginx simple (NO nginx-full o nginx-extras... que también debería funcionar) del repositorio de Ubuntu Bionic. Es la versión nginx 1.14.0.

La salida de nginx -Ves

nginx version: nginx/1.14.0 (Ubuntu)
built with OpenSSL 1.1.1  11 Sep 2018
TLS SNI support enabled
configure arguments: --with-cc-opt='-g -O2 
-fdebug-prefix-map=/build/nginx-GkiujU/nginx-1.14.0=. 
-fstack-protector-strong -Wformat -Werror=format-security 
-fPIC -Wdate-time -D_FORTIFY_SOURCE=2' 
--with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -fPIC' 
--prefix=/usr/share/nginx 
--conf-path=/etc/nginx/nginx.conf 
--http-log-path=/var/log/nginx/access.log 
--error-log-path=/var/log/nginx/error.log 
--lock-path=/var/lock/nginx.lock 
--pid-path=/run/nginx.pid 
--modules-path=/usr/lib/nginx/modules 
--http-client-body-temp-path=/var/lib/nginx/body 
--http-fastcgi-temp-path=/var/lib/nginx/fastcgi 
--http-proxy-temp-path=/var/lib/nginx/proxy 
--http-scgi-temp-path=/var/lib/nginx/scgi 
--http-uwsgi-temp-path=/var/lib/nginx/uwsgi 
--with-debug --with-pcre-jit 
--with-http_ssl_module 
--with-http_stub_status_module 
--with-http_realip_module 
--with-http_auth_request_module 
--with-http_v2_module 
--with-http_dav_module 
--with-http_slice_module 
--with-threads 
--with-http_addition_module 
--with-http_geoip_module=dynamic 
--with-http_gunzip_module 
--with-http_gzip_static_module 
--with-http_image_filter_module=dynamic 
--with-http_sub_module 
--with-http_xslt_module=dynamic 
--with-stream=dynamic 
--with-stream_ssl_module 
--with-mail=dynamic 
--with-mail_ssl_module

Entonces no hay señal de ngx_http_limit_req_moduley tampoco hay ningún .soarchivo en el directorio del módulo, pero está funcionando. Entonces ve que de alguna manera está en el núcleo de nginx.

Encontrarás, por ejemplo, ngx_http_geoip_module.cen el directorio de módulos de las fuentes de nginx (Mirror en Github:https://github.com/nginx/nginx/tree/master/src/http/modules), que debe especificar como se ve arriba. Pero en el mismo directorio también está el ngx_http_limit_req_module.cmódulo y no es necesario especificarlo... por lo que no está del todo claro qué módulo debe especificarse al configurar nginx.

Quizás esto ayude a alguien a ahorrar tiempo en la investigación.

¡Salud!

información relacionada