ソースからnginxを構築する
構築は configure
コマンドを使って設定されます。configureはnginxが接続の処理時に使うことができるメソッドを含めたシステムのあらゆる特徴を定義します。最後にMakefile
を作ります。configure
コマンドは次のパラメータをサポートしています:
-
--prefix=
— サーバファイルを保持するディレクトリを定義します。これと同じディレクトリがpath
configure
(ライブラリのソースファイルへのパスは除く) とnginx.conf
設定ファイルの中で全ての相対パスにも使われます。デフォルトでは/usr/local/nginx
に設定されます。 -
--sbin-path=
— nginxの実行ファイルの名前を設定します。この名前はインストールの間でのみ使われます。デフォルトではpath
という名前です。prefix
/sbin/nginx -
--conf-path=
—path
nginx.conf
設定ファイルの名前を設定します。必要があれば、nginxはコマンドラインのパラメータ で設定ファイルを指定して、異なる設定ファイルで常に開始するようにすることもできます。デフォルトでは-c
file
という名前です。prefix
/conf/nginx.conf -
--pid-path=
— メインプロセスのプロセスIDを格納するnginx.pidファイルの名前を設定します。インストール後は、path
nginx.conf
設定ファイルの中で pidディレクティブを使っていつでも変更することができます。デフォルトでは
という名前です。prefix
/logs/nginx.pid -
--error-log-path=
— 初期のエラー、ウォーニング、診断ファイルの名前を設定します。インストール後は、path
nginx.conf
設定ファイルの中で error_logディレクティブを使っていつでも変更することができます。デフォルトでは
という名前です。prefix
/logs/error.log -
--http-log-path=
— HTTPサーバの初期のリクエストログファイルを設定します。インストール後は、path
nginx.conf
設定ファイルの中で access_logディレクティブを使っていつでも変更することができます。デフォルトでは
という名前です。prefix
/logs/access.log -
--build=
— 任意のnginxビルド名を設定します。name
-
--user=
— workerプロセスによって使われる特権が無いユーザの名前を設定します。インストール後は、name
nginx.conf
設定ファイルの中で groupディレクティブを使っていつでも変更することができます。デフォルトのユーザ名はnobodyです。 -
--group=
— workerプロセスによって使われる特権が無いグループの名前を設定します。インストール後は、name
nginx.conf
設定ファイルの中で groupディレクティブを使っていつでも変更することができます。デフォルトでは、権限が無いユーザののグループ名が設定されます。 -
--with-select_module
--without-select_module
— サーバがselect()
メソッドを使うことを許可するモジュールの構築を可能または不可能にします。プラットフォームがkqueue、epollまたは/dev/poll のようなもっと適切なメソッドをサポートしていないような場合は、このモジュールが自動的に構築されます。 -
--with-poll_module
--without-poll_module
— サーバがpoll()
メソッドを使うことを許可するモジュールの構築を可能または不可能にします。プラットフォームがkqueue、epollまたは/dev/poll のようなもっと適切なメソッドをサポートしていないような場合は、このモジュールが自動的に構築されます。 -
--without-http_gzip_module
— HTTPサーバの応答を圧縮するモジュールの構築を無効にするこのモジュールを構築して実行するにはzlibライブラリが必要になります。 -
--without-http_rewrite_module
— HTTPサーバがリクエストをリダイレクトしリクエストのURIを変更することができるモジュールの構築を無効にするこのモジュールを構築して実行するにはPCREライブラリが必要です。 -
--without-http_proxy_module
— proxying moduleHTTPサーバの構築を無効にする。 -
--with-http_ssl_module
— HTTPサーバにHTTPS protocol support を追加するモジュールの構築を有効にする。このモジュールはデフォルトでは構築されません。このモジュールを構築して実行するにはOpenSSLライブラリが必要です。 -
--with-pcre=
— PCREライブラリのソースのパスを設定します。ライブラリの配布物 (バージョン 4.4 — 8.40) をPCRE サイトからダウンロードし解凍する必要があります。後は、nginxのpath
./configure
とmake
で完了です。このライブラリはlocation ディレクティブの中でサポートされる正規表現とngx_http_rewrite_moduleモジュールのために必要です。 -
--with-pcre-jit
— "just-in-time コンパイル" サポート(1.1.12、pcre_jit ディレクティブ) のPCREライブラリを構築する -
--with-zlib=
— zlibライブラリのソースへのパスを設定する。ライブラリの配布物(バージョン 1.1.3 - 1.2.11) をzlib サイトからダウンロードして解凍する必要があります。後は、nginxのpath
./configure
とmake
で完了です。このライブラリはngx_http_gzip_moduleモジュールのために必要です。 -
--with-cc-opt=
— CFLAGS変数に追加される追加パラメータを設定する。FreeBSDにおいてシステムのPCREライブラリを使う場合は、parameters
--with-cc-opt="-I /usr/local/include"
が指定されるべきです。select()
によってサポートされる数を増加する必要がある場合は、ここでこのように指定する事ができます:--with-cc-opt="-D FD_SETSIZE=2048"
-
--with-ld-opt=
— リンクの時に使われる追加パラメータを設定する。FreeBSDにおいてシステムのPCREライブラリを使う場合は、parameters
--with-ld-opt="-L /usr/local/lib"
が指定されるべきです。
パラメータの使い方の例(これらは全て一行で記述される必要があります):
設定 --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-pcre=../pcre-8.40 --with-zlib=../zlib-1.2.11
設定の後で、nginxはmake
を使ってコンパイルされインストールされます。