Nginxにモジュールを動的に追加する方法

Nginxにモジュールを動的に追加する方法

前面に書かれた

多くの場合、現在のプロジェクトの状況とビジネスニーズに基づいて Nginx をインストールした後、ビジネスが発展するにつれて、インストールした Nginx に他の機能モジュールを追加することがよくあります。 Nginx に機能モジュールを追加するときは、Nginx をシャットダウンしないでください。これには、インストールされた Nginx にモジュールを動的に追加する方法についての質問が含まれます。この記事では、インストールされた Nginx にモジュールを動的に追加する方法について説明します。

Nginxにモジュールを動的に追加する

ここでは、サードパーティの ngx_http_google_filter_module モジュールのインストールを例に説明します。

Nginx モジュールでは、Apache のように構成ファイルで .so を参照するのではなく、Nginx を再コンパイルする必要があります。

サードパーティの拡張モジュール ngx_http_google_filter_module をダウンロードします。

# cd /データ/ソフトウェア/
# git クローン https://github.com/cuber/ngx_http_google_filter_module

nginx がコンパイルされインストールされたときにどのモジュールがインストールされるかを確認します

コマンドラインを Nginx 実行プログラムが配置されているディレクトリに切り替え、次のように ./nginx -V と入力します。

[root@binghe sbin]# ./nginx -V
nginx バージョン: nginx/1.19.1
gcc 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC) でビルド 
OpenSSL 1.0.2 で構築 2015年1月22日
TLS SNIサポートが有効
構成引数: --prefix=/usr/local/nginx-1.19.1 --with-openssl=/usr/local/src/openssl-1.0.2 --with-pcre=/usr/local/src/pcre-8.37 --with-zlib=/usr/local/src/zlib-1.2.8 --with-http_ssl_module
[root@binghe sbin]#

Nginx をコンパイルしてインストールするために使用されるパラメータは次のようになります。

--prefix=/usr/local/nginx-1.19.1 --with-openssl=/usr/local/src/openssl-1.0.2 --with-pcre=/usr/local/src/pcre-8.37 --with-zlib=/usr/local/src/zlib-1.2.8 --with-http_ssl_module

インストールが必要なモジュールを追加して再コンパイルします

ここに --add-module=/data/software/ngx_http_google_filter_module を追加します

詳細は以下の通りです。

./configure --prefix=/usr/local/nginx-1.19.1 --with-openssl=/usr/local/src/openssl-1.0.2 --with-pcre=/usr/local/src/pcre-8.37 --with-zlib=/usr/local/src/zlib-1.2.8 --with-http_ssl_module -–add-module=/data/software/ngx_http_google_filter_module

上記のように、以前にインストールしたNginxのすべてのパラメータを追加し、最後に--add-module=/data/software/ngx_http_google_filter_moduleを追加します。

その後、次のようにコンパイルする必要があります。

# make // make install しないでください。そうしないと上書きされてしまいます

ここで注意すべき重要な点は、make install コマンドを実行しないことです。

nginxバイナリを置き換える

# 元の nginx 実行プログラムをバックアップします。# mv /usr/local/nginx-1.19.1/sbin/nginx /usr/local/nginx-1.19.1/sbin/nginx.bak
# 新しくコンパイルされた nginx 実行可能プログラムを /usr/local/nginx-1.19.1/sbin/ ディレクトリにコピーします。# cp /opt/nginx/sbin/nginx /usr/local/nginx-1.19.1/sbin/

さて、今日はここまでにしましょう!より多くの人が見て、一緒に学び、向上できるように、「いいね!」、フォロー、転送することを忘れないでください。 !

以上がNginxにモジュールを動的に追加する方法についての詳しい内容です。Nginxにモジュールを動的に追加する方法については、123WORDPRESS.COMの他の関連記事もぜひご覧ください。

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

<<:  Vue3 プロジェクトで WeChat 認証ログインをエレガントに実装する方法

>>:  Mysql 日付クエリの詳細な紹介

推薦する

Dockerはelasticsearchイメージを起動し、ディレクトリをマウントした後にエラーを解決します

docker hub から es イメージ (バージョン 6.4.2) をダウンロードしました。詳細...

Docker の詳細なイラスト

1. Dockerの紹介1.1 仮想化1.1.1 仮想化とは何ですか?コンピュータにおける仮想化とは...

Navicat を MySQL に接続するときに発生する 2059 エラーの解決方法

最近、Djangoを学習しているときにデータベースを使用する必要があったため、MySQLで使用するた...

MySQLデータベース最適化技術の簡単な紹介

成熟したデータベース アーキテクチャは、最初から高可用性、高スケーラビリティなどの機能を備えて設計さ...

Vuex環境の詳細な説明

目次Vuex環境を構築する要約するVuex環境を構築するsrcディレクトリにフォルダstoreを作成...

Windowsにmysql5.7をインストールする方法

まずmysqlの圧縮バージョンをダウンロードします。公式ダウンロードアドレスは123WORDPRES...

JSONP クロスドメインシミュレーション Baidu 検索

目次1. JSONPとは何か2. JSONPクロスドメインリクエスト3. Baidu検索をシミュレー...

JavaScript の例におけるループの使用法の詳細な説明

退屈だったので、ループに関する簡単な演習をいくつかまとめてみました。JS を学び始めたばかりの方に役...

CSS パフォーマンスの最適化 - will-change の使用方法の詳細な説明

will-change は、要素にどのような変更が行われるかをブラウザに伝え、ブラウザが事前に最適化...

React+Antdはテーブルの追加、削除、変更の例を実装します

目次テーブル/index.jsテーブル/モデル/index.jsテーブル/モデル/モジュール/bas...

初心者向けMySQLシリーズチュートリアル

目次1. 基本概念と基本コマンド1) 基本的な概念2) 基本コマンド2. SQL文の記述順序と実行順...

Web デザインの経験: 独善的な Web デザイナー

1. ゴミかクラシックか? Web テクノロジーは急速に更新されており、Web サイトのインターフェ...

Linux環境にDocker環境をインストールする(落とし穴なし)

目次インストールの前提条件ステップ1: システムの残りを確認してクリアし、Dockerの依存関係をイ...

MySQL がユーザー名とパスワードの漏洩を引き起こす可能性のある Riddle の脆弱性を公開

MySQL バージョン 5.5 および 5.6 を標的とする Riddle 脆弱性により、中間者攻撃...

Docker Nginxコンテナの制作と展開の実装方法

クイックスタート1. Docker Hubでnginxイメージを見つけるdocker 検索 ngin...