運用・保守を理解していない開発者はどこまで行けるのでしょうか?Nginxの構成について学びに来てください!

初めて技術的な乾物と業界情報を入手してください!

運用・保守を理解していない開発者はどこまで行けるのでしょうか? Nginxの構成について学びに来てください!

☞サービスに役立つ無料のCSDN情報|無料のグループメンバーシップ☜

基本的に、すべてのソフトウェアまたはフレームワークが構成ファイルを提供します。たとえば、Tomcatには構成ファイルがあり、Apacheにも、Spring Bootもあり、nginxも例外ではありません。その中で、nginxの設定ファイルが最も複雑ですが、nginxの設定構文を完全に理解していないため、それほど複雑ではありません。理解すると、非常に単純であることがわかります。

Nginxの構成文法は、おおまかに次の7つのルールで構成されています。

運用・保守を理解していない開発者はどこまで行けるのでしょうか? Nginxの構成について学びに来てください!

各構成ファイルは、命令ブロックと命令で構成されています。命令ブロックは{}中括弧で構成され、1つの命令ブロックに複数の命令を含めることができます。各命令は;セミコロンで終わります。

コマンドとパラメーターはスペースで区切られ、複数のスペースも使用できます。#コメントに使用され、#行以降のすべてのコメントはコメントであり、#は単一行コメントを表します。

$変数を表すために準拠します。変数には、カスタム変数とシステム提供の変数が含まれます。一部のコマンドのパラメーターは、locationコマンドなどの正規表現をサポートしています。

includeステートメントまたはincludeディレクティブを使用すると、他の複数の構成ファイルを導入できます。

各命令の特定のパラメータは何ですか?パラメータはいくつですか?正規表現をサポートしていますか?などは、特定のモジュールによって決定されます。

4つの一般的な命令ブロックがあります。つまり、http命令、サーバー命令、ロケーション命令、アップストリーム命令です。これらの4つをマスターすることは基本的に全世界を取ることができます!

nginxのさまざまなモジュールが組み合わされて強力な処理機能を形成し、各モジュールは特定の機能のみを実装します。たとえば、現在の制限機能はモジュールngx_http_limit_conn_moduleまたはカスタムモジュールngx_http_limit_req_moduleによって実装されます。fastcgi転送機能はモジュールngx_http_fastcgi_moduleによって実装されます。プロキシ転送機能はngx_http_proxy_moduleによって実装されます(もちろん、転送機能の実装は必須です。モジュールngx_http_upstream_moduleもあります)。

ディレクティブproxy_passまたはfastcgi_passを構成する場合、どのモジュールをディレクティブで解析する必要がありますか?明らかに、この機能を実装するモジュールによって解決される必要があります。つまり、nginx構成ファイルの解析は各モジュールに分散されます。

各モジュールにはコマンド配列があり、モジュールが解析できるすべての構成命令が格納されています。命令構造はngx_command_tによって定義されます。

運用・保守を理解していない開発者はどこまで行けるのでしょうか? Nginxの構成について学びに来てください!

上記の構造は次のように説明されます。

運用・保守を理解していない開発者はどこまで行けるのでしょうか? Nginxの構成について学びに来てください!
一般的に使用されるタイプ命令のタイプは次のとおりです。

運用・保守を理解していない開発者はどこまで行けるのでしょうか? Nginxの構成について学びに来てください!

一般的に使用される4つの命令ブロックに対応するモジュールは非常に複雑です。詳細については、nginxのソースコードを参照してください。この記事では主に、nginxの構成ファイルが複雑ではなく、すべてが命令または命令ブロックで構成されているという事実について詳しく説明します。その構成を理解するだけです。後で、特定の例を通じて各命令の使用法を学習します。

おすすめ

転載: blog.51cto.com/15127565/2667812