Nginxを再コンパイルしてモジュールを追加する方法

Nginxを再コンパイルしてモジュールを追加する方法

Nginx をコンパイルしてインストールするときに、http_ssl_module などの一部のモジュールはデフォルトではインストールされません。Nginx で HTTPS をサポートするには、このモジュールを追加する必要があります。

以下では、すでにインストールされている新しいモジュールを追加する方法について説明します。

1. nginx がインストールされているソース コードのルート ディレクトリ (つまり、インストール パッケージが保存されているディレクトリ) を見つけます。見つからない場合は、新しいソース コードをダウンロードして解凍します。

CD ソフトウェア
ls
nginx-1.10.2 nginx-1.10.2.tar.gz

2. nginxのバージョンとコンパイルパラメータを確認する

nginx の sbin ディレクトリに nginx の sbin ディレクトリを作成します。

3. nginxソースディレクトリに入る

nginx-1.10.2をインストールします

4. 再コンパイルされたコードとモジュール

./configure --prefix=/usr/local/nginx --with-http_ssl_module

5. make を実行します (注意: make install を実行しないでください。そうしないとインストールが上書きされます)。make を実行すると、/software/nginx-1.10.2/objs ディレクトリに nginx が作成されます。これがプログラムの新しいバージョンです。

6. 古いnginxプログラムをバックアップする

/usr/local/nginx/sbin/ をコピーします。
nginx_bak をコピー

7. 新しいnginxプログラムを/usr/local/nginx/sbin/にコピーします。

cp /software/nginx-1.10.2/objs/nginx /usr/local/nginx/sbin/

8. 新しいnginxプログラムが正しいかどうかをテストする

nginx の sbin ディレクトリに nginx の sbin ディレクトリを作成します。
nginx: 設定ファイル /usr/local/nginx/conf/nginx.conf の構文は正常です
nginx: 設定ファイル /usr/local/nginx/conf/nginx.conf のテストが成功しました

9. スムーズなサービス開始

/usr/local/nginx/sbin/nginx -s リロード

モジュールがインストールされているかどうかを確認する

nginx の sbin ディレクトリに nginx の sbin ディレクトリを作成します。
nginx バージョン: nginx/1.10.2
gcc 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) で構築
OpenSSL 1.0.1e-fips で構築 2013年2月11日
TLS SNIサポートが有効
設定引数: --prefix=/usr/local/nginx --with-http_ssl_module

Nginxを再起動する

./nginx -s 終了
./nginx

nginx リロードモジュールが完了しました!

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • NginxはURLのパスに応じてアップストリームに動的に転送します
  • nginx ip ブラックリストの動的禁止の例
  • NginxはLua+Redisを使用してIPを動的にブロックします
  • Nginx ダイナミック DNS リバース プロキシの書き方をいくつか詳しく説明します
  • Nginxにモジュールを動的に追加する方法

<<:  Windows での MySQL 8.0.11 インストール チュートリアル

>>:  ファイルが存在するかどうかを判断する JavaScript サンプルコード

推薦する

アイデアを通じてプロジェクトをDockerにパッケージ化する方法

多くの友人が、Docker でプロジェクトを実行する方法をずっと知りたがっていました。今日は、自分の...

Vue の nextTick について話す

データが変更されても、DOM ビューはすぐには更新されません。変更直後にノードまたはその値を取得しよ...

MySQL マルチテーブルクエリの詳細な説明

いつも、気づかないうちに時間というのは驚くほど早く過ぎていきます。小暑が過ぎ、中暑に突入しました。太...

MySQLでユーザー認証情報を表示する具体的な方法

具体的な方法: 1. コマンドプロンプトを開く2. mysql -u root -pコマンドを入力し...

Ubuntu 16.04 で FTP サーバーを構築するチュートリアル

Ubuntu 16.04 FTP サーバーをビルドするftpをインストールするftp をインストール...

各 Nginx プロセスで開くことができるファイルの最大数を設定する方法

1. システム内で開いているファイルの最大数を確認する #現在のリソース制限設定を表示する ulim...

MySQL ifnull のネスト使用手順

MySQL ifnull のネストされた使用ifnull をネストする方法があるかどうかオンラインで...

ハイパーリンクアイコンの仕様: 記事の読みやすさを向上

1. ハイパーリンクアイコンの仕様とは?<br />ハイパーリンクアイコンの仕様は、「C...

Vue2.0/3.0双方向データバインディングの実装原理の詳細説明

Vue2.0/3.0双方向データバインディングの実装原理双方向データバインディングとは、データの変更...

Element-UI の Select と Cascader にポップアップ下部アクション ボタンを追加する方法

下図のように、 selectポップアップレイヤーの下部に操作ボタンを配置するのが一般的な設計方法です...

Vue3 における ref と reactive の詳細な説明と拡張

目次1. 参照と反応1. 反応的2.参照2. shallowRef と shallowReactiv...

MySQLチュートリアルではストアドプロシージャを徹底的に理解します

目次1. ストアドプロシージャに関連する概念2. ストアドプロシージャの使用1) ストアドプロシージ...

javascript:void(0) の意味と使用例

voidキーワードの紹介まず、void キーワードは JavaScript で非常に重要なキーワード...

XHTML 入門チュートリアル: テキストの書式設定と特殊文字

<br />このセクションでは、XHTML でテキストの書式設定と特殊文字を実装する方法...

Reactにおけるコンテキスト適用シナリオの分析

コンテキストの定義と目的コンテキストは、コンポーネント ツリーにプロパティを明示的に渡すことなく、コ...