Debian 12、11、または 10 でソースから NGINX をビルドすると、いくつかの利点と潜在的な欠点があります。ソースからコンパイルすると、ニーズに合わせた特定のモジュールと最適化を使用して NGINX をカスタマイズできるため、ビルド プロセスをより細かく制御できます。この方法を使用すると、公式リポジトリで利用可能になる前に、最新の機能とセキュリティ パッチを確実に入手することもできます。
ただし、考慮すべき潜在的な欠点がいくつかあります。ソースからビルドするには、プリコンパイルされたパッケージをインストールする場合に比べて、より多くの時間と労力が必要です。また、ビルド プロセスと依存関係を十分に理解している必要があります。さらに、新しいバージョンごとに NGINX を手動で再コンパイルする必要があるため、更新の管理がより複雑になる可能性があります。
このガイドでは、Debian 12、11、または 10 でソースから NGINX をビルドする方法を説明し、インストールを成功させるために必要な手順とコマンドについて説明します。
ステップ1: Debianのアップデートとアップグレード
インストールを開始する前に、Debian システムを更新します。ターミナルで次のコマンドを使用します。
sudo apt update
sudo apt upgrade
これらのコマンドは、利用可能なアップデートのリストを取得し、システムをアップグレードして、最新のソフトウェアで作業できるようにします。
ステップ2: 必要な依存関係をインストールする
次のコマンドを使用して、Nginx をコンパイルするために必要な初期パッケージをインストールします。
sudo apt install build-essential libpcre3-dev libssl-dev zlib1g-dev libgd-dev
ステップ3: NGINXソースコードをダウンロードする
必要な依存関係がインストールされたら、次のステップはNGINXソースコードをダウンロードすることです。 NGINX ウェブサイト ニーズに最適なバージョンを選択してください。最新のメインライン、安定版、またはその他のバージョンを選択できます。
選択したバージョンをダウンロードするには、wget コマンドを使用します。
wget http://nginx.org/download/nginx-x.x.x.tar.gz
xxx をバージョン番号に置き換えます。たとえば、最新のメインライン バージョン 1.25.1 をダウンロードするには、次のコマンドを使用します。
wget https://nginx.org/download/nginx-1.25.1.tar.gz
注意: 上記のコマンドをコピーしないでください。これは単なる例です。最新の安定版またはメインラインのダウンロード リンクを必ず取得してください。
ステップ4: ソースコードを抽出する
ソース コードは圧縮された tarball で提供されます。次のコマンドを使用して抽出します。
tar -xzvf nginx-1.25.1.tar.gz
次に、新しく抽出したディレクトリに移動します。
cd nginx-1.25.1
ステップ5: NGINXオプションを構成する
この手順では、ソースから NGINX オプションを設定します。つまり、NGINX ビルドのパスとモジュールを選択します。次のコマンドを使用します。
./configure --prefix=/var/www/html --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --with-pcre --lock-path=/var/lock/nginx.lock --pid-path=/var/run/nginx.pid --with-http_ssl_module --with-http_image_filter_module=dynamic --modules-path=/etc/nginx/modules --with-http_v2_module --with-http_v3_module --with-stream=dynamic --with-http_addition_module --with-http_mp4_module
オプションの意味は次のとおりです。
- –prefix=/var/www/html: インストールのルートディレクトリを設定します。
- –sbin-path=/usr/sbin/nginx: nginx プログラムが配置される場所を設定します。
- –conf-path=/etc/nginx/nginx.conf: メインの NGINX 構成ファイルの場所を選択します。
- –http-log-path=/var/log/nginx/access.log および –error-log-path=/var/log/nginx/error.log: ログ ファイルの場所を定義します。
- –with-pcre: 設定ファイルに対して PCRE (Perl 互換正規表現) をオンにします。
- –lock-path=/var/lock/nginx.lock および –pid-path=/var/run/nginx.pid: ロック ファイルと pid ファイルの場所を設定します。
- –with-http_ssl_module: 安全な Web 接続のために SSL モジュールを有効にします。
- –with-http_image_filter_module=dynamic: 画像フィルターモジュールをオンにします。
- –modules-path=/etc/nginx/modules: 動的モジュールの配置場所を定義します。
- –with-http_v2_module: HTTP/2 モジュールをオンにします。
- –with-stream=dynamic: ストリーム モジュールを動的にアクティブ化します。
- –with-http_addition_module および –with-http_mp4_module: 追加モジュールと MP4 モジュールをオンにします。
HTTP/3 モジュールを使用しない場合は、–with-http_v3_module を省略します。HTTP/3 は、より高速で信頼性の高い Web ブラウジングを実現します。
ステップ 6: NGINX をインストールする (NGINX をコンパイルしてビルドする)
ソースから NGINX をビルドするためのオプションを設定したら、NGINX をコンパイルしてインストールします。これは 2 つのステップで実行されます。
まず、 make
コマンドは、NGINXソースコードを、 ./configure
スクリプト。これにより、NGINX バイナリ実行ファイルが作成されます。
make
第二に、 sudo make install
コマンドは、NGINXバイナリ、設定ファイル、およびその他のファイルを、指定されたプレフィックスパスにインストールします。 ./configure
脚本:
sudo make install
インストール後、NGINXは次の場所に配置されます。 sbin
プレフィックス パスのディレクトリ。
ステップ7: NGINX Systemdサービスを作成する
NGINX をソースからビルドしてコンパイルした後、システム上の NGINX サービスを管理する systemd プロセスを作成することが重要です。方法は次のとおりです。
新しい systemd サービス ファイルを作成します。
sudo nano /etc/systemd/system/nginx.service
ファイルに次の内容を追加します。
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/usr/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
systemd デーモンをリロードします。
sudo systemctl daemon-reload
NGINX サービスを開始します。
sudo systemctl start nginx
起動時に NGINX サービスが自動的に開始されるようにします。
sudo systemctl enable nginx
最後に、サービスがアクティブになっていることを確認します。
systemctl status nginx
ステップ8: NGINXをテストする
NGINX が正しく実行されていることを確認するには、Web ブラウザーを開き、ローカル ホストまたはサーバーの IP アドレスを使用してテスト ページに移動します。
http://localhost
または置き換える localhost
サーバーの IP アドレスを入力します。
追加コマンドとヒント
追加モジュールを使用してNGINXをコンパイルする
追加のモジュールをコンパイルすることで、NGINX の機能を強化できます。たとえば、Nginx HTTP プッシュ モジュールを使用するには、NGINX の設定時に –add-module フラグを使用します。
./configure --add-module=/path/to/nginx-http-push-module
make
sudo make install
結論
これらの手順に従うことで、Debian システムにソースから NGINX を正常にビルドしてインストールできます。このアプローチにより、NGINX インストールの柔軟性と制御性が向上し、特定の要件に合わせてカスタマイズできるようになります。セキュリティとパフォーマンスを維持するために、定期的に更新を確認し、必要に応じて再コンパイルしてください。ソースから NGINX をビルドすることで提供される強化された機能とカスタマイズ オプションをお楽しみください。