nginxパッケージの選び方@CentOS6、Ubuntu14.04 | 株式会社ハートビーツ(HEARTBEATS Corporation)|AWS・クラウド・サーバーなどのインフラ運用を24時間365日サポート

インフラエンジニアway

nginxパッケージの選び方@CentOS6、Ubuntu14.04

技術

こんにちは。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-orgcentos nginx-org-mainlineubuntu nginx-orgubuntu nginx-org-mainline
–conf-path=/etc/nginx/nginx.confoooo
–error-log-path=/var/log/nginx/error.logoooo
–group=nginxoooo
–http-client-body-temp-path=/var/cache/nginx/client_tempoooo
–http-fastcgi-temp-path=/var/cache/nginx/fastcgi_tempoooo
–http-log-path=/var/log/nginx/access.logoooo
–http-proxy-temp-path=/var/cache/nginx/proxy_tempoooo
–http-scgi-temp-path=/var/cache/nginx/scgi_tempoooo
–http-uwsgi-temp-path=/var/cache/nginx/uwsgi_tempoooo
–lock-path=/var/run/nginx.lockoooo
–param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wp -D_FORTIFY_SOURCE=2′xxoo
–param=ssp-buffer-size=4 -m64 -mtune=generic’ooxx
–pid-path=/var/run/nginx.pidoooo
–prefix=/etc/nginxoooo
–sbin-path=/usr/sbin/nginxoooo
–user=nginxoooo
–with-cc-opt=’-O2 -g -pipe -Wp -D_FORTIFY_SOURCE=2 -fexceptions -fstack-protectorooxx
–with-cc-opt=’-g -O2 -fstack-protectorxxoo
–with-file-aio=oooo
–with-http_addition_module=oooo
–with-http_auth_request_module=oooo
–with-http_dav_module=oooo
–with-http_flv_module=oooo
–with-http_gunzip_module=oooo
–with-http_gzip_static_module=oooo
–with-http_mp4_module=oooo
–with-http_random_index_module=oooo
–with-http_realip_module=oooo
–with-http_secure_link_module=oooo
–with-http_spdy_module=oooo
–with-http_ssl_module=oooo
–with-http_stub_status_module=oooo
–with-http_sub_module=oooo
–with-ipv6=oooo
–with-ld-opt=’-Wl -Bsymbolic-functions -Wl -z relro -Wl –as-needed’xxoo
–with-mail=oooo
–with-mail_ssl_module=oooo

Ubuntu公式パッケージ

ubuntu nginxubuntu nginx-lightubuntu nginx-extrasubuntu nginx-fullubuntu nginx-naxsi
–add-module=/build/buildd/nginx-1.4.6/debian/modules/headers-more-nginx-modulexxoxx
–add-module=/build/buildd/nginx-1.4.6/debian/modules/naxsi/naxsi_srcxxxxo
–add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-auth-pamxxoox
–add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-cache-purgexxoxo
–add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-dav-ext-modulexxoox
–add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-development-kitxxoxx
–add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-echoxooox
–add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-http-pushxxoxx
–add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-luaxxoxx
–add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-upload-progressxxoxx
–add-module=/build/buildd/nginx-1.4.6/debian/modules/nginx-upstream-fairxxooo
–add-module=/build/buildd/nginx-1.4.6/debian/modules/ngx-fancyindexxxoxx
–add-module=/build/buildd/nginx-1.4.6/debian/modules/ngx_http_substitutions_filter_modulexxoox
–conf-path=/etc/nginx/nginx.confooooo
–error-log-path=/var/log/nginx/error.logooooo
–http-client-body-temp-path=/var/lib/nginx/bodyooooo
–http-fastcgi-temp-path=/var/lib/nginx/fastcgiooooo
–http-log-path=/var/log/nginx/access.logooooo
–http-proxy-temp-path=/var/lib/nginx/proxyooooo
–http-scgi-temp-path=/var/lib/nginx/scgiooooo
–http-uwsgi-temp-path=/var/lib/nginx/uwsgiooooo
–lock-path=/var/lock/nginx.lockooooo
–param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2′ooooo
–pid-path=/run/nginx.pidooooo
–prefix=/usr/share/nginxooooo
–with-cc-opt=’-g -O2 -fstack-protectorooooo
–with-debug=ooooo
–with-http_addition_module=oxoox
–with-http_dav_module=oxoox
–with-http_flv_module=xxoxx
–with-http_geoip_module=oxoox
–with-http_gzip_static_module=oooox
–with-http_image_filter_module=oxoox
–with-http_mp4_module=xxoxx
–with-http_perl_module=xxoxx
–with-http_random_index_module=xxoxx
–with-http_realip_module=ooooo
–with-http_secure_link_module=xxoxx
–with-http_spdy_module=oxoox
–with-http_ssl_module=ooooo
–with-http_stub_status_module=ooooo
–with-http_sub_module=oxoox
–with-http_xslt_module=oxoox
–with-ipv6=ooooo
–with-ld-opt=’-Wl -Bsymbolic-functions -Wl -z relro’ooooo
–with-mail=oxoox
–with-mail_ssl_module=oxoox
–with-pcre-jit=ooooo
–without-http_browser_module=xoxxx
–without-http_geo_module=xoxxx
–without-http_limit_req_module=xoxxx
–without-http_limit_zone_module=xoxxx
–without-http_memcached_module=xoxxx
–without-http_referer_module=xoxxx
–without-http_scgi_module=xoxxo
–without-http_split_clients_module=xoxxx
–without-http_ssi_module=xoxxx
–without-http_userid_module=xoxxx
–without-http_uwsgi_module=xoxxo
–without-mail_imap_module=xxxxo
–without-mail_pop3_module=xxxxo
–without-mail_smtp_module=xxxxo

まとめ

今のところ、基本機能を使うならnginx.org公式のmainlineがよいでしょう。

いろいろなモジュールを使うならUbuntu公式のnginx-extrasが簡単です。

公式mainlineに `http_perl_modulenginx-lua` モジュールがデフォルトで入るといろいろ助かるのですが、そうなっていなくて残念。

TOP