본문 바로가기

리눅스

[draft] nginx에서 사용할 수 있는 모듈을 확인하는 방법

728x90

nginx에서 사용할 수 있는 모듈을 확인하는 방법

모듈을 확인하는 방법은 Nginx가 어떻게 설치되었는지(패키지 매니저를 사용하여 설치했는지 소스에서 컴파일했는지)에 따라 달라질 수 있습니다.

설치된 nginx 패키지의 모듈 확인

대부분의 패키지 매니저로 설치된 Nginx는 미리 컴파일된 모듈 목록을 포함합니다. nginx -V 명령을 사용하여 컴파일된 모듈 목록을 확인할 수 있습니다.

nginx -V
$ nginx -V
nginx version: nginx/1.24.0
built by gcc 11.2.0 (Ubuntu 11.2.0-19ubuntu1)
built with OpenSSL 3.0.2 15 Mar 2022
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-g -O2 -ffile-prefix-map=/data/builder/debuild/nginx-1.24.0/debian/debuild-base/nginx-1.24.0=. -flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fPIC' --with-ld-opt='-Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -flto=auto -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -pie'

configure arguments 부분에서 컴파일된 모듈 목록을 확인할 수 있습니다.

사용 가능한 모듈 목록 조회

nginx -V 2>&1 | tr -- - '\n' | grep _module
$ nginx -V 2>&1 | tr -- - '\n' | grep _module
http_addition_module
http_auth_request_module
http_dav_module
http_flv_module
http_gunzip_module
http_gzip_static_module
http_mp4_module
http_random_index_module
http_realip_module
http_secure_link_module
http_slice_module
http_ssl_module
http_stub_status_module
http_sub_module
http_v2_module
mail_ssl_module
stream_realip_module
stream_ssl_module
stream_ssl_preread_module

동적 모듈 확인

nginx는 동적 모듈을 지원합니다. 동적 모듈을 나중에 추가하거나 제거할 수 있습니다. 동적 모듈은 load_module 지시어를 사용하여 nginx 설정 파일에 포함됩니다.

동적 모듈 목록을 확인하려면 nginx 설정 파일(/etc/nginx/nginx.conf 또는 /etc/nginx/conf.d/ 디렉토리 내의 설정 파일)에 load_module 지시어를 확인합니다.

동적 모듈의 실제 파일 확인

동적 모듈은 보통 /etc/nginx/modules/ 또는 /usr/share/nginx/modules/ 디렉토리에 저장됩니다. 이 디렉토리에서 모듈 파일을 확인할 수 있습니다.

ls -l /etc/nginx/modules/
$ ls -l /etc/nginx/modules/
total 652
-rwxr-xr-x 1 root root 667296 Jan 12 04:50 ngx_http_vhost_traffic_status_module.so

 

참고URL

- nginx documentation : How to use nginx modules

 

728x90