ホームページ 運用・保守 Nginx Nginx を使用して HTTP リクエストのリバース プロキシ キャッシュを行う方法

Nginx を使用して HTTP リクエストのリバース プロキシ キャッシュを行う方法

Aug 02, 2023 pm 10:58 PM
nginxリバースプロキシキャッシュ

Nginx を使用して HTTP リクエストのリバース プロキシ キャッシュを行う方法

Nginx は、高性能のオープン ソース Web サーバー ソフトウェアです。静的リソース リクエストを処理する Web サーバーとして機能することに加えて、Nginx は次のことも実行できます。 HTTP リクエスト、リバース プロキシ。リバース プロキシは、クライアント要求を複数のバックエンド サーバーに転送して処理するのに役立ち、キャッシュを通じて応答速度を向上させることができます。この記事では、Nginxでリバースプロキシキャッシュを設定する方法を紹介します。

  1. Nginx のインストール
    まず、Nginx サーバーをインストールする必要があります。 Linux 環境では、パッケージ マネージャーを通じてインストールできます。 Debian/Ubuntu を例として、次のコマンドを実行します。

    sudo apt update
    sudo apt install nginx
    ログイン後にコピー
  2. リバース プロキシ キャッシュの構成
    インストールが完了したら、Nginx 構成ファイルを編集してリバース プロキシ キャッシュを構成する必要があります。 。デフォルトの構成ファイルは /etc/nginx/nginx.conf にあります。テキスト エディタでファイルを開き、http{} ブロックを見つけます。

次の構成を http{} ブロックに追加します:

proxy_cache_path /path/to/cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m;
ログイン後にコピー

ここで、/path/to/cache はキャッシュです。実際の状況に応じて変更できます。 levels=1:2キャッシュ ディレクトリのレベルを示します。 keys_zone=my_cache:10m は、キャッシュ メタデータを保存するためにキャッシュに 10M のメモリを割り当てることを意味します。 max_size=10gキャッシュの最大サイズが 10G であることを示します。 inactive=60m は、キャッシュ ファイルが 60 分間アクセスされなかった場合、期限切れとみなされることを意味します。

次に、server{} ブロック内に次の設定を追加します。

proxy_cache my_cache;
proxy_cache_valid 200 302 1h;
proxy_cache_valid 301 404 10m;
proxy_cache_use_stale error timeout updating http_500 http_503;
ログイン後にコピー

このうち、proxy_cache my_cache は、 という名前を有効にすることを意味します。 my_cache キャッシュ。 proxy_cache_valid は、さまざまなステータス コードのキャッシュ有効期間を設定するために使用されます。たとえば、ステータス コード 200 および 302 のリクエスト キャッシュ有効期間は 1 時間です。 proxy_cache_use_stale バックエンド サーバーでエラーまたはタイムアウトが発生した場合に、期限切れのキャッシュを応答として使用するかどうかを指定するために使用されます。

  1. リバース プロキシの構成
    キャッシュの構成が完了したら、リバース プロキシを構成する必要があります。 server{} ブロック内に、次の設定を追加します。

    location / {
     proxy_pass http://backend_server;
     proxy_set_header Host $host;
     proxy_cache_bypass $http_cache_control;
     proxy_cache_key $uri$is_args$args;
    }
    ログイン後にコピー

    ここで、proxy_pass はバックエンド サーバーのアドレスを指定します。 proxy_set_header は、プロキシ リクエストのヘッダー情報を設定するために使用されます。ここでは、リクエストの host ヘッダーは現在のホストに設定されます。 proxy_cache_bypass は、キャッシュを使用しないリクエストを指定するために使用されます。これは、リクエスト ヘッダーの cache-control に基づいて決定されます。 proxy_cache_key キャッシュ キーの生成に使用されます。ここでは、要求された URI とパラメーターの組み合わせを示します。

  2. Nginx を再起動してテスト
    上記の設定が完了したら、設定ファイルを保存して終了します。次に、次のコマンドを使用して Nginx サービスを再起動します。

    sudo systemctl restart nginx
    ログイン後にコピー

    次に、ブラウザまたはコマンド ライン ツールを介してリクエストを送信し、Nginx キャッシュの動作を観察します。

まとめ
上記の手順により、Nginx のリバース プロキシ キャッシュ機能を正常に設定できました。キャッシュを利用することでリクエストの応答速度が大幅に向上し、バックエンドサーバーの負荷を軽減できます。同時に、Nginx は、実際のニーズに応じて調整および最適化できる柔軟な構成オプションも提供します。

この記事が、Nginx のリバース プロキシ キャッシュ機能の理解と使用に役立つことを願っています。ご質問やご不明な点がございましたら、コメント欄にメッセージを残してください。できる限りお答えいたします。

以上がNginx を使用して HTTP リクエストのリバース プロキシ キャッシュを行う方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

nginxパフォーマンスチューニング:速度と低レイテンシの最適化 nginxパフォーマンスチューニング:速度と低レイテンシの最適化 Apr 05, 2025 am 12:08 AM

NGINXのパフォーマンスチューニングは、ワーカープロセスの数、接続プールサイズの数、GZIP圧縮とHTTP/2プロトコルの有効化、およびキャッシュとロードバランスを使用することで実現できます。 1.ワーカープロセスの数と接続プールサイズを調整します:worker_processesauto;イベント{worker_connections1024;}。 2。GZIP圧縮とhttp/2プロトコルを有効にします:http {gzipon; server {risten43sslhttp2;}}。 3。キャッシュ最適化:http {proxy_cache_path/path/to/cachelevels = 1:2k

サーバーサイドを含む(SSI)のnginxを構成するにはどうすればよいですか? サーバーサイドを含む(SSI)のnginxを構成するにはどうすればよいですか? Mar 17, 2025 pm 05:06 PM

この記事では、サーバーサイドのnginxの構成(SSI)、パフォーマンスへの影響、動的コンテンツにSSIを使用し、nginx.wordカウントの一般的なSSI問題のトラブルシューティング:159について説明します。

NginxにHTTP認証(Basic Auth、Digest Auth)を実装するにはどうすればよいですか? NginxにHTTP認証(Basic Auth、Digest Auth)を実装するにはどうすればよいですか? Mar 17, 2025 pm 05:03 PM

この記事では、基本的な方法とダイジェスト方法を使用して、NginxでHTTP認証の実装を行い、セットアップの手順とセキュリティへの影響を詳述しています。また、ユーザー管理に認証領域を使用してカバーし、認証METHの組み合わせを提案する

URLの書き換えとリダイレクトにnginxを構成するにはどうすればよいですか? URLの書き換えとリダイレクトにnginxを構成するにはどうすればよいですか? Mar 17, 2025 pm 05:02 PM

この記事では、URLの書き換えとリダイレクトのためのNginxの構成、ステップとベストプラクティスの詳細について説明します。効果的なURL管理を確保するための一般的な間違いとテスト方法に対処します。

NGINXのパフォーマンスとリソースの使用を監視するにはどうすればよいですか? NGINXのパフォーマンスとリソースの使用を監視するにはどうすればよいですか? Mar 17, 2025 pm 05:08 PM

この記事では、Nginxのパフォーマンスの監視と最適化について説明し、Nginxのステータスページ、システムレベルの監視、PrometheusやGrafanaなどのサードパーティソリューションなどのツールの使用に焦点を当てています。パフォーマンスオプティザのベストプラクティスを強調しています

Nginxを監視するための最良のツールは何ですか? Nginxを監視するための最良のツールは何ですか? Mar 17, 2025 pm 05:09 PM

この記事では、DataDog、New Relic、Nginx AmplifyなどのトップNginx監視ツールについて説明し、リアルタイムの監視、アラート、およびサーバーのパフォーマンスを強化するための詳細なメトリックの機能に焦点を当てています。

Nginxはリクエスト処理とワーカープロセスをどのように処理しますか? Nginxはリクエスト処理とワーカープロセスをどのように処理しますか? Mar 14, 2025 pm 04:13 PM

Nginxは、マスターワーカーモデルを使用してリクエストを効率的に処理します。ワーカープロセスは、イベント駆動型の非ブロッキングI/Oを使用して、数千の接続を管理します。パフォーマンスの最適化には、ワーカープロセス、接続、構成の設定の調整が含まれます

NginxはApache Webサーバーと比較してどうですか? NginxはApache Webサーバーと比較してどうですか? Mar 14, 2025 pm 04:09 PM

この記事では、NginxとApacheを比較して、アーキテクチャ、パフォーマンス、およびユースケースに焦点を当てています。 Nginxのイベント駆動型モデルは、トラフィックの多い下でより良いパフォーマンスを提供しますが、Apacheは動的なコンテンツとBegiの構成の容易さに好まれています

See all articles