コンピュータープログラミング

Nginxは:セットアップとインストール

apacheの、nginxのは何ですか? 目的、機能、カスタマイズオプション - これらのすべてのWeb開発者が開発をテストするために理解しておく必要がありますものです。

nginxのについて単語を言います

このツールは、一つのメインといくつかのワークフローを持っています。 読書や構成の検証と最初の取引。 また、その制御下ワークフロー管理です。 過去の問題 - 着信要求を処理します。 イベントに基づいていますnginxの使用モデル。 機構は、直接ワーカープロセス間の効率的な割り当て要求を達成するために、オペレーティングシステムに応じて、使用されています。 その数は常にコンフィギュレーションファイルに示されています。 値は、固定または処理することができるプロセッサコアの数によって導かれ、自動的に設定されますか。 システムおよびモジュールのnginxの構成では、構成ファイルを用いて行われます。 あなたが何かを変更する必要がある場合はそのため、あなたは彼の名前を検索する必要があります。 通常は、ディレクティブに/ etc / nginxのである(しかし、ルートは他のシステムと異なる場合があります)と、拡張の.confを有しています。

スタート、再起動、およびログ

これを行うには、実行ファイルの実行をしなければなりません。 それが開始されたときにnginxのサーバーを設定することのみ可能です。 経営陣は、-sパラメータを指定して実行ファイルを呼び出すために感謝して行われます。 これを行うには、次のコマンドを使用します。

nginxの-s信号

このケースでは、(ツールを起動したユーザーから来なければならない)、次のコマンドを置き換えることができます:

  1. 停止します。 これは、高速シャットダウンのために使用されています。
  2. リロードしてください。 チームは、コンフィギュレーション・ファイルを再ロードする必要がありました。 実際には、ファイルが動作するまで変更が有効にならないことです。 そして有効にするためには、再起動が必要です。 すぐにこの信号を取得して、メインプロセスは、構成ファイルの構文構成要素の正しさを検証し、そこに利用できるガイダンスを適用しようとし始めます。 障害が発生した場合は、変更をロールバックし、古いパラメータで動作します。 すべてが成功した場合、それは新しいワークフローを起動します、と古いが需要先に送信されます。
  3. 終了します。 作業を円滑に完了するために使用します。 あなたは現在のリクエストが維持終了するまで待ちたい場合に使用します。
  4. 再度開きます。 閉じると、開いているログファイル。

ユーティリティを使用します

設定方法は、UNIX手段(ユーティリティを例として説明する殺す)を用いて行うことができます。 彼らは通常、プロセスデータに直接信号を送信するためのメカニズムを使用しています。 これらは、IDによってリンクされています。 このデータは、nginx.pidファイルに格納されます。 私たちは、プロセス№134に興味を持っていると仮定しましょう。 その後、私たちに次の情報を送信する必要がスムーズに完了するために:

-sは1628 QUIT殺します

私たちは、すべての開いているファイルの一覧を表示したいと仮定しましょう。 我々は、ユーティリティPSを利用しています。 次のようにチームもなります。

ps -ax | grepのnginxの

あなたは、追加の楽器は、そのアプリケーションを行くことを示して使用することで、見ることができるようにそれは、あります。 そして今のは、どのようにコミットnginxのコンフィギュレーションに焦点を当ててみましょう。

設定ファイルの構造

nginxのインストールと設定すると、モジュールとの仕事を含んでいます。 これらは、構成ファイルで指定されているディレクティブを使用して構成されています。 彼らは、単純またはブロックすることができます。 (;) - 最初のタイプは、スペースで区切られており、その端部がセミコロンによって示される指令及びパラメータからなります。 ブロックは、同様の構造を有しています。 代わりに中括弧({}命令)に配置された命令の追加のセットを配置本指示閉鎖。 彼らは名前やプロセスの他のパラメータを投稿することができます場合は、それらと呼ばれているこのような構造は、コンテキストを持っています。 例えば、HTTP、位置及びサーバなど。

静的コンテンツの配信

これは、nginxの設定が直面している最も重要な課題の一つです。 コンテンツの統計的分布の下で意味の画像やHTML-ページ(動的でない)です。 私たちは、クラスタnixのnginxの設定に関する単一の作業が必要であるとします。 それはそうするのは難しいですか? いいえ、例を見てみましょう。 それに着手する前に、それは問題の状況を詳細に必要です。 だから、要求に応じて、ファイルは、様々なローカルディレクトリから来ます。 このように、/データ/ WWWに、我々は、HTML文書を持っています。 そして、ディレクトリ/データ/画像の画像を含みます。 この場合、最適な設定nginxのは、HTTP内のサーバユニットを構成する必要があります設定ファイルを編集する必要があります。 サポートするために、2つの場所として使用されます。

実装:サーバー

だから、最初に我々は、ディレクトリを作成し、彼らは(あなたがコンテンツを追加する必要がHTMLで)を展開する必要があるファイルで自分自身を配置する必要があります。 次に、コンフィギュレーションファイルを開きます。 これでは、デフォルトのサーバーは、すでに大部分がコメントアウトされているいくつかのブロックを持っています。 最適な結果を達成するために、このプロセスは、デフォルトですべてのコンポーネントに関して行われる必要があります。 そして、このコードを使用して新しいサーバユニットを追加します。

HTTP {

サーバー{

}

}

設定ファイルには、いくつかのようなブロックを扱うことができます。 しかし、彼らはデータを受信し、それを通して自分の名前とポートで区別されなければなりません。

実装:場所

サーバー内で決定:

位置/ {

ルート/データ/ WWW。

}

符号の存在は、「/」得られたデータを比較し、ここで処理された要求から、そのようなアドレスがあるかどうかを確認する必要があります。 問題がない場合は、ローカルシステム内に配置された所望のファイルへのパス/データ/ WWWを指定します。 数ブロックとの一致がある場合は、最も長い接頭辞を選択します。 この例では、長さが1に等しい、すなわち、使用には「競争」が存在しないことをイベントで排他的になります。 今、それが更新されますしてみましょう:

位置/画像/ {

ルート/データ。

}

識別することができますどのように、我々は、画像を探しています。 さて、以前にあったすべての動向を組み合わせてみましょう、と次のように、この時点での構成は次のとおりです。

サーバー{

位置/ {

ルート/データ/ WWW。

}

位置/画像/ {

ルート/データ。

}

}

これは、その場合、標準の作業バージョンである ポート№80。 ます。http:// localhost /を使用すると、アドレスに行けば何の問題もなくこのサーバは、お使いのコンピュータ上で利用できるようにすることができます。 これはすべてどのように動作しますか?

例の動作原理

彼らは/画像で始まるクエリに来るときに、対応するディレクトリのファイルサーバは、ユーザに送信されます。 その後、ローカルコンピュータ上の要求はhttpをnginxの設定を行っている場合彼の不在でエラー404を示す情報が与えられます://localhost/images/example.png我々は、その場所/data/images/example.pngファイルを取得します。 あなたが指定した場合、「/」の記号検索は、ディレクトリ/データ/ WWWで行われます。 しかし、我々は唯一の構成を変更しました。 これは動作し始め、それが再起動する必要があります。 これを行うには、nginxの-sリロードを使用しています。 正常な動作が不可能な場合は、のaccess.logおよびディレクティブは/ usr / local / nginxの/ logsにありerror.logファイルのファイルで、あなたは、障害の原因を探すことができます。

シンプルなプロキシサーバーを作成します

(ちなみに、かなり簡単に、)この施設の構成は、最も一般的なアプリケーションの一つである - それはnginxのについて語ったことができます。 これは、要求を受信したサーバーの原理を利用して、必要なサイトにリダイレクトします。 その後、その答えは、タスクを設定1に送信され、それらから期待されています。 それでは、基点を作成する例を見てみましょう。 これは、サービス利用者の要求に対処し、ローカルディレクトリからの画像とそれらを提供します。 だから、次の内容を別のサーバを追加し、HTTPをブロックします:

サーバー{

8080を聞きます。

ルート/データ/ UP1。

位置/ {

}

}

さて、あなたのために解読してみましょう:単純なサーバーを作成します。 彼がリッスンするポート8080 、サーバは80日に実行され、聞く必要はありません。 ディレクトリ/データ/ UP1に向けられているローカルファイルシステム内のすべての要求を表示します(もちろん、前にそれを作成するために必要となること)。 それを確認することができるようにするには、index.htmlファイルを配置する必要があります。 ため、我々はすべての回での場所を使用することができ、ルートサーバーのコンテキスト内のディレクティブを配置する(て除去アクセス制限など)。 私たちは今、プロキシを作成するために取り組んでいます。 それが機能するために、我々はプロトコル名を指定し、パラメータとして港湾施設(:// localhostを:8080ローカル接続のために、それは、HTTPのようになります)されるためproxy_passディレクティブが必要です。 この結果を取得します。

サーバー{

位置/ {

proxy_passます。http:// localhostを:8080;

}

位置/画像/ {

ルート/データ。

}

}

あなたはコードを見て、それを分析する場合は、2番目のユニットの場所が変更されていることに気づくことがあります。 したがって、この場合には、それは典型的な拡張子の画像を扱うことができます。 少し異なる次のように、それが表示されることができます。

場所〜\(GIF | JPG | PNG)。$ {

ルート/データ/画像。

}

次のように最後のプロキシ設定は次のとおりです。

サーバー{

位置/ {

proxy_passにhttp:// localhost:8080 /;

}

場所〜\(GIF | JPG | PNG)。$ {

ルート/データ/画像。

}

}

これは、これらの拡張機能があり、その最後にリクエストをフィルタリングし、ファイルを要求した人に送信します。 あなたが設定ファイルをチェックしたい場合、それは再起動する必要があることを忘れないでください。 そして、私を信じて、それだけでnginxのコンフィギュレーションです。 あなたが設定「Vkontakte」ファイルサーバーや他の大企業を開いた場合は、この記事の言葉よりも多くのコードを持つことになります。

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ja.unansea.com. Theme powered by WordPress.