nginx の基本入門 (インストール、一般的なコマンド、リバース プロキシ)

導入

インターネットの世界では、nginx(「engine-x」と発音します) は、オープンソースの高性能HTTPサーバーおよびリバース プロキシ サーバーとして人気があり、使用されています。使いやすさ、高効率、安定性により、多くの Web サイトやアプリケーションで最初の選択肢となっています。この記事では、 のインストール方法やよく使うコマンド、リバースプロキシの導入方法などnginx、基本的な概念や機能を詳しく紹介します初心者でも、慣れ親しんだ開発者でも、この記事は貴重なコンテンツと実践的なヒントを提供します。もっと詳しく知って、その魅力を発見してみましょう!nginxnginxnginxnginxnginx

1.nginxとは

Nginxメールプロキシサーバーや一般プロキシサーバーHTTPとしても利用できるオープンソースの高性能リバースプロキシサーバーです。TCP/UDPその設計は、高い同時実行性、高性能、低メモリ消費に重点を置いており、静的コンテンツの提供、負荷分散、およびWebサーバーとしてよく使用されます。

Nginx次の機能と特徴があります。

  1. 静的ファイル サービス: Web サーバーとしてNginx静的ファイルのリクエストを処理し、リクエストを迅速に処理して静的コンテンツを送信することでパフォーマンスを向上させます。

  2. リバース プロキシ:Nginxリバース プロキシ サーバーとして使用して、クライアント要求を複数のバックエンド サーバーに転送し、負荷分散、キャッシュ、セキュリティなどの機能を提供できます。

  3. 動的コンテンツ処理: 主に静的ファイルの処理を目的としていますが、動的コンテンツを処理するためにNginxさまざまなバックエンド アプリケーション (など) とともにPHP、Python、Java使用することもできます。

  4. 高いパフォーマンス:Nginx非同期、ノンブロッキングのイベント駆動型アーキテクチャを採用しており、多数の同時接続を処理でき、優れたパフォーマンスを提供します。

  5. 低メモリ消費量:Nginx多数の同時接続を処理する場合、使用するメモリが少なくなるため、より多くの同時接続が可能になり、パフォーマンスが向上します。

  6. 柔軟な構成:Nginx構成は非常に柔軟であり、管理者はニーズに応じてさまざまな構成や最適化を実行して、さまざまなニーズを満たすことができます。

全体として、Nginxこれは高性能、柔軟、スケーラブルな Web サーバーおよびプロキシ サーバーであり、静的ファイル サービング、リバース プロキシ、負荷分散、動的コンテンツ処理などのさまざまなシナリオに適しています。

2.nginxをダウンロードしてインストールします

1. ダウンロード

nginx ダウンロード アドレス
ここに画像の説明を挿入
公式 Web サイトにアクセスして、対応するシステム バージョンをダウンロードします

2. Windows の下にインストールします

圧縮された zip パッケージをダウンロードし、解凍後すぐに使用します。
ここに画像の説明を挿入
インストール ディレクトリを見つけて
ここに画像の説明を挿入
実行します。

ngnix -v

バージョン番号を確認します。
ここに画像の説明を挿入
バージョン番号はインストールが成功したことを意味することがわかります。

3. 走る

nginx.exe ファイルをダブルクリックして nginx を起動し、
ここに画像の説明を挿入
ローカル ブラウザでアクセスします。127.0.0.1このインターフェイスが表示されたら、起動が成功したことを意味します。
ここではポート番号を 8088 に変更し、デフォルトは 80 です。
ここに画像の説明を挿入

4. 外部サーバーにアクセスできない

サーバー上の nginx が正常に起動していることを確認した後、ポートが外部に開いていないため、外部サーバーにアクセスできません。
この時点で、サーバーにアクセスして設定する必要があります。入站规则

ここでは Aliyun サーバーを例に挙げます。
コンソールを開き、セキュリティ グループを見つけ、ルール
ここに画像の説明を挿入
エントリを設定します。設定ポートを手動で追加します
ここに画像の説明を挿入
。デフォルトは 80 です
。nginx 設定でポートを変更していない場合は、80 を設定できます。 /80 をここで
ここに画像の説明を挿入
設定します。 アクセス可能な IP
0.0.0.0/0 は、すべてのユーザーがサーバーのこのポートにアクセスできることを意味し、特定の状況に応じてアクセスできる IP を指定することもできます。
ここに画像の説明を挿入
設定が完了したら、保存し
ブラウザでサーバーのパブリック ネットワーク IP にアクセスし、次のように表示されれば、ポートの開発が成功したことを意味します。
ここに画像の説明を挿入

3. nginxの共通コマンド

注文 説明する
nginx -v nginxのバージョン情報を表示する
nginx -t nginx設定ファイルの構文が正しいか確認してください
nginx -s 開始 nginxサービスを開始する
nginx -s 停止 nginxサービスを停止する
nginx -s リロード nginx設定ファイルをリロードします
nginx -s 終了 nginx サービスを正常に停止する
nginx -s を再度開く 開いているすべてのログ ファイルを再起動します
nginx -s リロード -squit nginx 設定ファイルをリロードし、古いワーカー プロセスを正常に停止します。
nginx -s stop -wait nginx サービスを停止し、古いワーカー プロセスが終了するまで待ちます。
nginx -c ファイル 使用する構成ファイルを指定します
nginx -g ディレクティブ コマンドラインでグローバル設定ディレクティブを設定する
nginx -h ヘルプ情報を表示する
nginx -p プレフィックス プレフィックス パスを設定します (このパスは構成ファイルを検索するときに使用されます)
nginx-q 構成チェック時のエラー出力をオフにする
nginx-V nginx の構成オプションを表示する
nginx -s を再度開く 開いているすべてのログ ファイルを再起動します
nginx -s リロード -squit nginx 設定ファイルをリロードし、古いワーカー プロセスを正常に停止します。
nginx -s stop -wait nginx サービスを停止し、古いワーカー プロセスが終了するまで待ちます。
nginx -c ファイル 使用する構成ファイルを指定します
nginx -g ディレクティブ コマンドラインでグローバル設定ディレクティブを設定する

一部のコマンドは管理者権限で実行する必要がある場合があり、そうでないと正常に実行されない可能性があることに注意してください。

4.nginx.config

nginx.configはい、サーバーのさまざまなパラメーターとオプションをnginx構成するために使用される構成ファイル。nginx

一般に、nginx.config構成オプションは次のセクションに分類できます。

  1. グローバル構成オプション:

    • worker_processes: クライアントリクエストを処理するワーカープロセスの数を指定します。
    • error_log: エラー ログ ファイルのパスとレベルを指定します。
    • events: 使用するイベント ドライバーや接続数などのイベント モデルを設定します。
    • http: http 関連の構成オプションを指定します。
  2. http 構成オプション:

    • server: 仮想ホストを構成し、リスニング IP アドレスとポート番号を指定します。
    • location: リクエストの一致ルールと処理方法を設定します。
    • proxy_pass: 指定されたバックエンド サーバーにリクエストを転送するようにリバース プロキシを構成します。
    • root: 静的ファイルのルート ディレクトリを指定します。
    • index: デフォルトのインデックスファイルを指定します。
    • try_files: ファイルを検索するためのルールを指定します。

たとえば、次は単純な nginx.config 構成ファイルの例です。

worker_processes  1;
error_log  /var/log/nginx/error.log;
events {
    
    
    worker_connections  1024;
}
http {
    
    
    server {
    
    
        listen  80;
        server_name  example.com;
        location / {
    
    
            root  /var/www/html;
            index  index.html index.php;
        }
        location /api/ {
    
    
            proxy_pass  http://api.example.com;
        }
    }
}

上記の設定では、workerプロセスの指定、エラーログのパスとレベルの設定、イベントの接続数の設定を行います。
このセクションではhttp、仮想ホスト、リスニング80ポート、一致ルールがルート パスと/api/パスを定義します。
ルート パスはルート ディレクトリとデフォルトのインデックス ファイルで構成され、/api/パスはバックエンド サーバーへのリバース プロキシで構成されます。

五、FileZあり

1.FileZillaとは何ですか

FileZilla は、サーバーにファイルをアップロードおよびダウンロードするための無料のオープンソース FTP ソフトウェアですこれは次の目的に役立ちます。

  1. ファイル転送: FTP、FTPS、および SFTP プロトコルを通じて、ファイルをローカル コンピュータからサーバーにアップロードしたり、サーバーからローカル コンピュータにダウンロードしたりできます。

  2. ファイル管理: ローカル コンピュータとサーバー間でファイルを参照、編集、コピー、移動、削除できます。

  3. Web サイトのメンテナンス: リモート サーバー上の Web サイト ファイルを管理するために使用でき、Web サイトのコンテンツを簡単に更新したり、ファイルやフォルダーを追加または削除したりできます。

  4. 自動化: ファイル転送キューとバッチ操作をサポートし、スケジュールされたタスクを設定し、ファイルを自動的にアップロードまたはダウンロードし、自動 Web サイト バックアップを実行できます。

  5. クロスプラットフォームでの使用: Windows、Mac OS、Linux などの複数のオペレーティング システムで実行できます。

結論として、FileZilla は、頻繁にファイル操作を必要とする Web マスターや開発者にとって、強力なファイル転送および管理ツールです。

2. FileZilla をダウンロードしてインストールします

FileZillaのダウンロードアドレス
ここに画像の説明を挿入

ダウンロードする対応するバージョンを選択します。Windows
バージョンをダウンロードしたら、プロンプトに従って段階的にインストールします。
インストールが成功したら、リモート ホストの IP、ユーザー、パスワード、リンクするポートを入力します。
ここに画像の説明を挿入

6. リバースプロキシ

1. nginxリバースプロキシとは

Nginx のリバース プロキシとは、Nginx がプロキシ サーバーとして機能し、クライアントのリクエストをバックエンド サーバーに転送することを意味します。リバース プロキシは、バックエンド サーバーの実際の IP アドレスを隠し、サーバーのセキュリティを向上させ、負荷分散された方法で複数のバックエンド サーバーにリクエストを分散できます。

2. リバースプロキシワークフロー

  1. クライアントは Nginx サーバーにリクエストを送信します。
  2. リクエストを受信した後、Nginx サーバーはバックエンド サーバーを選択し、事前に設定されたルールとアルゴリズムに従ってリクエストを処理します。
  3. Nginx サーバーは、選択されたバックエンド サーバーにリクエストを転送します。
  4. バックエンドサーバーはリクエストを処理し、レスポンスを生成します。
  5. バックエンド サーバーは Nginx サーバーに応答を返します。
  6. Nginxサーバーは受信したレスポンスをクライアントに返します。

以下は、象徴的なイメージの説明です。

客户端             Nginx服务器             后端服务器
  |                      |                          |
  |  --------请求-------->|                          |
  |                      |                          |
  |  <-------响应--------|                          |
  |                      |                          |
  |            -----------选择后端服务器----------->
  |                      |                          |
  |            <---------发送请求到后端服务器---------
  |                      |                          |
  |                      |---处理请求并生成响应------>|
  |                      |                          |
  |                      |<------返回响应------------|
  |                      |                          |
  |            <---------返回响应到Nginx服务器---------
  |                      |                          |
  |  <--------返回响应-----|                          |
  |                      |                          |

このリバース プロキシ方式を通じて、Nginx は負荷分散、高可用性、キャッシュなどの機能を提供して、サーバーのパフォーマンスと安定性を最適化できます。

3. nginxリバースプロキシの設定方法

nginx.conf 構成ファイルでは、locationディレクティブを使用して、リバース プロキシのパスとターゲット サーバーを構成できます。以下は、ローカル ポート 8080 からターゲット サーバー example.com へのすべてのリクエストをプロキシする設定例です。

http {
    
    
    server {
    
    
        listen 80;

        location / {
    
    
            proxy_pass http://example.com;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }
    }
}

上記の設定では、proxy_passディレクティブはリクエストを に転送しますhttp://example.comproxy_set_headerディレクティブは、リクエストの元のホストとクライアントの IP アドレスをターゲット サーバーに渡す HTTP ヘッダーを設定するために使用されます。

ディレクティブを使用して、location必要に応じて複数のリバース プロキシ パスを構成できます。ブロックごとlocationに異なる値を設定してproxy_pass、異なるターゲットサーバーを指定できます。たとえば、次の構成では、 へのパスをプロキシし/apihttp://api.example.com/appのパスをプロキシしますhttp://app.example.com

http {
    
    
    server {
    
    
        listen 80;

        location /api {
    
    
            proxy_pass http://api.example.com;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }

        location /app {
    
    
            proxy_pass http://app.example.com;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }
    }
}

上記の例は、基本的なリバース プロキシ構成のみを示していることに注意してください。SSL実際のニーズに応じて、負荷分散、キャッシュなどの他の構成パラメータの追加が必要になる場合があります。詳細な設定については、nginx公式ドキュメントを参照してください。

nginx.configファイルを変更するたびに、次のように入力します。

nginx -s reload

設定ファイルをリロードします。

要約する

さて、このノートでは、 のnginx基本的な紹介を行い、インストール方法、一般的なコマンド、およびリバース プロキシの構成方法を学びました。Nginx高性能Webサーバーおよびリバースプロキシサーバーとして、優れた性能と安定性を有し、インターネット分野で広く使用されています。Webサーバーでもリバースプロキシサーバーでも、nginx豊富な機能と柔軟な構成オプションを提供し、実際のニーズに合わせてカスタマイズできます。この記事の紹介を通じて、このnginxテクノロジーについての理解を深め、実際のアプリケーションで柔軟に使用できるようになることを願っています。ご質問やご不明な点がございましたら、メッセージを残してご連絡ください。読んでくれてありがとう!

おすすめ

転載: blog.csdn.net/jieyucx/article/details/132444462