こんにちは。CTOの馬場です。
最近はnginxがパッケージでインストールできるようになってきたので、 いろいろなパッケージのconfigureオプションを比較してみました。
- nginx.org公式パッケージ(stable = 1.6.0) @ CentOS6, Ubuntu14.04
- nginx.org公式パッケージ(mainline = 1.7.3) @ CentOS6, Ubuntu14.04
- Ubuntu公式パッケージ(1.4.6) @ Ubuntu14.04
nginxにはまだDSO機構がないので利用したいモジュールが入ったものを選ぶ必要があります。
バージョン、configureオプションをもとにパッケージを選びましょう。
nginx.org公式パッケージ(stable / mainline)
centos nginx-org | centos nginx-org-mainline | ubuntu nginx-org | ubuntu nginx-org-mainline | |
--conf-path=/etc/nginx/nginx.conf | o | o | o | o |
--error-log-path=/var/log/nginx/error.log | o | o | o | o |
--group=nginx | o | o | o | o |
--http-client-body-temp-path=/var/cache/nginx/client_temp | o | o | o | o |
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp | o | o | o | o |
--http-log-path=/var/log/nginx/access.log | o | o | o | o |
--http-proxy-temp-path=/var/cache/nginx/proxy_temp | o | o | o | o |
--http-scgi-temp-path=/var/cache/nginx/scgi_temp | o | o | o | o |
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp | o | o | o | o |
--lock-path=/var/run/nginx.lock | o | o | o | o |
--param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wp -D_FORTIFY_SOURCE=2' | x | x | o | o |
--param=ssp-buffer-size=4 -m64 -mtune=generic' | o | o | x | x |
--pid-path=/var/run/nginx.pid | o | o | o | o |
--prefix=/etc/nginx | o | o | o | o |
--sbin-path=/usr/sbin/nginx | o | o | o | o |
--user=nginx | o | o | o | o |
--with-cc-opt='-O2 -g -pipe -Wp -D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector | o | o | x | x |
--with-cc-opt='-g -O2 -fstack-protector | x | x | o | o |
--with-file-aio= | o | o | o | o |
--with-http_addition_module= | o | o | o | o |
--with-http_auth_request_module= | o | o | o | o |
--with-http_dav_module= | o | o | o | o |
--with-http_flv_module= | o | o | o | o |
--with-http_gunzip_module= | o | o | o | o |
--with-http_gzip_static_module= | o | o | o | o |
--with-http_mp4_module= | o | o | o | o |
--with-http_random_index_module= | o | o | o | o |
--with-http_realip_module= | o | o | o | o |
--with-http_secure_link_module= | o | o | o | o |
--with-http_spdy_module= | o | o | o | o |
--with-http_ssl_module= | o | o | o | o |
--with-http_stub_status_module= | o | o | o | o |
--with-http_sub_module= | o | o | o | o |
--with-ipv6= | o | o | o | o |
--with-ld-opt='-Wl -Bsymbolic-functions -Wl -z relro -Wl --as-needed' | x | x | o | o |
--with-mail= | o | o | o | o |
--with-mail_ssl_module= | o | o | o | o |
Ubuntu公式パッケージ
ubuntu nginx | ubuntu nginx-light | ubuntu nginx-extras | ubuntu nginx-full | ubuntu nginx-naxsi | |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/headers-more-nginx-module | x | x | o | x | x |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/naxsi/naxsi_src | x | x | x | x | o |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-auth-pam | x | x | o | o | x |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-cache-purge | x | x | o | x | o |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-dav-ext-module | x | x | o | o | x |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-development-kit | x | x | o | x | x |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-echo | x | o | o | o | x |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-http-push | x | x | o | x | x |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-lua | x | x | o | x | x |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-upload-progress | x | x | o | x | x |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-upstream-fair | x | x | o | o | o |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/ngx-fancyindex | x | x | o | x | x |
--add-module=/build/buildd/nginx-1.4.6/debian/modules/ngx_http_substitutions_filter_module | x | x | o | o | x |
--conf-path=/etc/nginx/nginx.conf | o | o | o | o | o |
--error-log-path=/var/log/nginx/error.log | o | o | o | o | o |
--http-client-body-temp-path=/var/lib/nginx/body | o | o | o | o | o |
--http-fastcgi-temp-path=/var/lib/nginx/fastcgi | o | o | o | o | o |
--http-log-path=/var/log/nginx/access.log | o | o | o | o | o |
--http-proxy-temp-path=/var/lib/nginx/proxy | o | o | o | o | o |
--http-scgi-temp-path=/var/lib/nginx/scgi | o | o | o | o | o |
--http-uwsgi-temp-path=/var/lib/nginx/uwsgi | o | o | o | o | o |
--lock-path=/var/lock/nginx.lock | o | o | o | o | o |
--param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2' | o | o | o | o | o |
--pid-path=/run/nginx.pid | o | o | o | o | o |
--prefix=/usr/share/nginx | o | o | o | o | o |
--with-cc-opt='-g -O2 -fstack-protector | o | o | o | o | o |
--with-debug= | o | o | o | o | o |
--with-http_addition_module= | o | x | o | o | x |
--with-http_dav_module= | o | x | o | o | x |
--with-http_flv_module= | x | x | o | x | x |
--with-http_geoip_module= | o | x | o | o | x |
--with-http_gzip_static_module= | o | o | o | o | x |
--with-http_image_filter_module= | o | x | o | o | x |
--with-http_mp4_module= | x | x | o | x | x |
--with-http_perl_module= | x | x | o | x | x |
--with-http_random_index_module= | x | x | o | x | x |
--with-http_realip_module= | o | o | o | o | o |
--with-http_secure_link_module= | x | x | o | x | x |
--with-http_spdy_module= | o | x | o | o | x |
--with-http_ssl_module= | o | o | o | o | o |
--with-http_stub_status_module= | o | o | o | o | o |
--with-http_sub_module= | o | x | o | o | x |
--with-http_xslt_module= | o | x | o | o | x |
--with-ipv6= | o | o | o | o | o |
--with-ld-opt='-Wl -Bsymbolic-functions -Wl -z relro' | o | o | o | o | o |
--with-mail= | o | x | o | o | x |
--with-mail_ssl_module= | o | x | o | o | x |
--with-pcre-jit= | o | o | o | o | o |
--without-http_browser_module= | x | o | x | x | x |
--without-http_geo_module= | x | o | x | x | x |
--without-http_limit_req_module= | x | o | x | x | x |
--without-http_limit_zone_module= | x | o | x | x | x |
--without-http_memcached_module= | x | o | x | x | x |
--without-http_referer_module= | x | o | x | x | x |
--without-http_scgi_module= | x | o | x | x | o |
--without-http_split_clients_module= | x | o | x | x | x |
--without-http_ssi_module= | x | o | x | x | x |
--without-http_userid_module= | x | o | x | x | x |
--without-http_uwsgi_module= | x | o | x | x | o |
--without-mail_imap_module= | x | x | x | x | o |
--without-mail_pop3_module= | x | x | x | x | o |
--without-mail_smtp_module= | x | x | x | x | o |
まとめ
今のところ、基本機能を使うならnginx.org公式のmainlineがよいでしょう。
いろいろなモジュールを使うならUbuntu公式のnginx-extrasが簡単です。
公式mainlineに http_perl_module
か nginx-lua
モジュールがデフォルトで入るといろいろ助かるのですが、そうなっていなくて残念。