記事ディレクトリ
導入
インターネットの世界では、nginx
(「engine-x
」と発音します) は、オープンソースの高性能HTTP
サーバーおよびリバース プロキシ サーバーとして人気があり、使用されています。使いやすさ、高効率、安定性により、多くの Web サイトやアプリケーションで最初の選択肢となっています。この記事では、 のインストール方法やよく使うコマンド、リバースプロキシの導入方法などnginx
、基本的な概念や機能を詳しく紹介します。初心者でも、慣れ親しんだ開発者でも、この記事は貴重なコンテンツと実践的なヒントを提供します。もっと詳しく知って、その魅力を発見してみましょう!nginx
nginx
nginx
nginx
nginx
1.nginxとは
Nginx
メールプロキシサーバーや一般プロキシサーバーHTTP
としても利用できるオープンソースの高性能リバースプロキシサーバーです。TCP/UDP
その設計は、高い同時実行性、高性能、低メモリ消費に重点を置いており、静的コンテンツの提供、負荷分散、およびWeb
サーバーとしてよく使用されます。
Nginx
次の機能と特徴があります。
-
静的ファイル サービス: Web サーバーとして
Nginx
静的ファイルのリクエストを処理し、リクエストを迅速に処理して静的コンテンツを送信することでパフォーマンスを向上させます。 -
リバース プロキシ:
Nginx
リバース プロキシ サーバーとして使用して、クライアント要求を複数のバックエンド サーバーに転送し、負荷分散、キャッシュ、セキュリティなどの機能を提供できます。 -
動的コンテンツ処理: 主に静的ファイルの処理を目的としていますが、動的コンテンツを処理するために
Nginx
さまざまなバックエンド アプリケーション (など) とともにPHP、Python、Java
使用することもできます。 -
高いパフォーマンス:
Nginx
非同期、ノンブロッキングのイベント駆動型アーキテクチャを採用しており、多数の同時接続を処理でき、優れたパフォーマンスを提供します。 -
低メモリ消費量:
Nginx
多数の同時接続を処理する場合、使用するメモリが少なくなるため、より多くの同時接続が可能になり、パフォーマンスが向上します。 -
柔軟な構成:
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
構成オプションは次のセクションに分類できます。
-
グローバル構成オプション:
worker_processes
: クライアントリクエストを処理するワーカープロセスの数を指定します。error_log
: エラー ログ ファイルのパスとレベルを指定します。events
: 使用するイベント ドライバーや接続数などのイベント モデルを設定します。http
: http 関連の構成オプションを指定します。
-
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 ソフトウェアです。これは次の目的に役立ちます。
-
ファイル転送: FTP、FTPS、および SFTP プロトコルを通じて、ファイルをローカル コンピュータからサーバーにアップロードしたり、サーバーからローカル コンピュータにダウンロードしたりできます。
-
ファイル管理: ローカル コンピュータとサーバー間でファイルを参照、編集、コピー、移動、削除できます。
-
Web サイトのメンテナンス: リモート サーバー上の Web サイト ファイルを管理するために使用でき、Web サイトのコンテンツを簡単に更新したり、ファイルやフォルダーを追加または削除したりできます。
-
自動化: ファイル転送キューとバッチ操作をサポートし、スケジュールされたタスクを設定し、ファイルを自動的にアップロードまたはダウンロードし、自動 Web サイト バックアップを実行できます。
-
クロスプラットフォームでの使用: Windows、Mac OS、Linux などの複数のオペレーティング システムで実行できます。
結論として、FileZilla は、頻繁にファイル操作を必要とする Web マスターや開発者にとって、強力なファイル転送および管理ツールです。
2. FileZilla をダウンロードしてインストールします
ダウンロードする対応するバージョンを選択します。Windows
バージョンをダウンロードしたら、プロンプトに従って段階的にインストールします。
インストールが成功したら、リモート ホストの IP、ユーザー、パスワード、リンクするポートを入力します。
6. リバースプロキシ
1. nginxリバースプロキシとは
Nginx のリバース プロキシとは、Nginx がプロキシ サーバーとして機能し、クライアントのリクエストをバックエンド サーバーに転送することを意味します。リバース プロキシは、バックエンド サーバーの実際の IP アドレスを隠し、サーバーのセキュリティを向上させ、負荷分散された方法で複数のバックエンド サーバーにリクエストを分散できます。
2. リバースプロキシワークフロー
- クライアントは Nginx サーバーにリクエストを送信します。
- リクエストを受信した後、Nginx サーバーはバックエンド サーバーを選択し、事前に設定されたルールとアルゴリズムに従ってリクエストを処理します。
- Nginx サーバーは、選択されたバックエンド サーバーにリクエストを転送します。
- バックエンドサーバーはリクエストを処理し、レスポンスを生成します。
- バックエンド サーバーは Nginx サーバーに応答を返します。
- 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.com
。proxy_set_header
ディレクティブは、リクエストの元のホストとクライアントの IP アドレスをターゲット サーバーに渡す HTTP ヘッダーを設定するために使用されます。
ディレクティブを使用して、location
必要に応じて複数のリバース プロキシ パスを構成できます。ブロックごとlocation
に異なる値を設定してproxy_pass
、異なるターゲットサーバーを指定できます。たとえば、次の構成では、 へのパスをプロキシし/api
、http://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
テクノロジーについての理解を深め、実際のアプリケーションで柔軟に使用できるようになることを願っています。ご質問やご不明な点がございましたら、メッセージを残してご連絡ください。読んでくれてありがとう!