ホームページ 運用・保守 Nginx Nginx を使用して HTTP リクエストの圧縮と解凍を行う方法

Nginx を使用して HTTP リクエストの圧縮と解凍を行う方法

Aug 02, 2023 am 10:09 AM
nginx 圧縮 httpリクエスト nginxのプログラミング

Nginx を使用して HTTP リクエストを圧縮および解凍する方法

Nginx は、強力で柔軟な高性能 Web サーバーおよびリバース プロキシ サーバーです。 HTTP リクエストを処理する場合、Nginx が提供する gzip モジュールと Gunzip モジュールを使用してリクエストを圧縮および解凍し、データ送信量を削減し、リクエストの応答速度を向上させることができます。この記事では、Nginx を使用して HTTP リクエストを圧縮および解凍する方法の具体的な手順を紹介し、対応するコード例を示します。

  1. gzip モジュールの構成

まず、Nginx 構成ファイルで gzip モジュールを有効にする必要があります。 Nginx 構成ファイル (通常は /etc/nginx/nginx.conf または /usr/local/nginx/conf/nginx.conf にあります) を開き、http ブロックを見つけて、次の構成を追加します:

http {
  gzip on;
  gzip_types text/plain text/css application/javascript;
  gzip_min_length 1024;
  gzip_comp_level 1;
}
ログイン後にコピー

上記の構成の意味は次のとおりです:

  • gzip on; は、gzip モジュールを有効にすることを意味します。
  • gzip_types 圧縮する必要があるファイルの種類を示します。ここではテキスト ファイル、CSS ファイル、JavaScript ファイルを選択しました。ニーズに応じて設定できます。
  • gzip_min_length この値を超える長さのファイルのみが圧縮されることを示します。
  • gzip_comp_level 圧縮レベルを示します。レベルが高いほど圧縮効果は高くなりますが、CPU リソースをより多く消費します。
  1. gunzip モジュールの構成

受信したリクエストを解凍する必要がある場合は、gunzip モジュールも有効にする必要があります。同じ設定ファイル内で http ブロックを見つけて、次の設定を追加します。

http {
  gunzip on;
}
ログイン後にコピー
  1. 設定を適用して Nginx

Nginx 設定ファイルを保存した後、次のコマンドを実行します。コマンドを実行して構成を適用し、Nginx サービスを再起動します:

sudo service nginx reload
ログイン後にコピー

十分な権限があることを確認してください。

  1. 圧縮と解凍の確認

これで、Nginx の圧縮モジュールと解凍モジュールが構成されました。 HTTP リクエストを Nginx に送信することで、これらの機能が動作していることを確認できます。

まず、curl ツールを使用して、構成された Nginx サービスに GET リクエストを送信します。コマンドの

curl -H "Accept-Encoding: gzip, deflate" -I http://localhost
ログイン後にコピー

-H "Accept-Encoding: gzip, deflate"サーバーが gzip または deflate 圧縮方式を受け入れることができることを意味します。 -I は、完全な応答本文を取得せずに、応答ヘッダー情報のみを取得することを示します。

すべてが正常であれば、応答ヘッダーに次のような情報が表示されます。

Content-Encoding: gzip
ログイン後にコピー

これは、サーバーが送信のために応答本文を gzip 形式に圧縮したことを意味します。

次に、次のコマンドを使用して、圧縮解除されたリクエストを送信できます。 コマンド内の

curl --compressed -I http://localhost
ログイン後にコピー

--compressed は、受信した応答が圧縮されていることをサーバーに伝えることを意味します。 、解凍する必要があります。

すべてが正常に完了すると、応答ヘッダーに次のような情報が表示されます。

Content-Encoding: 
ログイン後にコピー

これは、サーバーが応答本文を解凍し、元の形式で送信したことを意味します。

上記の手順と検証を通じて、HTTP リクエストの圧縮と解凍を実装するように Nginx の gzip モジュールと Gunzip モジュールを正常に構成しました。

概要

この記事では、Nginx を使用して HTTP リクエストを圧縮および解凍する方法を紹介し、関連する設定とコマンドの例を示します。 Nginx の gzip および Gunzip モジュールを使用すると、データ送信量を削減し、リクエストの応答速度を向上させることができます。適切な構成と使用により、Web アプリケーションのパフォーマンスとユーザー エクスペリエンスを向上させることができます。使用中に問題が発生した場合は、Nginx の公式ドキュメントを参照するか、助けを求めることができます。この記事の内容があなたのお役に立てば幸いです!

参考リンク:

  • Nginx 公式ドキュメント: http://nginx.org/en/docs/
  • Gzip モジュール構成ガイド: https://nginx .org/en/docs/http/ngx_http_gzip_module.html
  • Gunzip モジュール構成ガイド: https://nginx.org/en/docs/http/ngx_http_gunzip_module.html

以上が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)

Tomcat サーバーへの外部ネットワーク アクセスを許可する方法 Tomcat サーバーへの外部ネットワーク アクセスを許可する方法 Apr 21, 2024 am 07:22 AM

Tomcat サーバーが外部ネットワークにアクセスできるようにするには、以下を行う必要があります。 外部接続を許可するように Tomcat 構成ファイルを変更します。 Tomcat サーバー ポートへのアクセスを許可するファイアウォール ルールを追加します。 Tomcat サーバーのパブリック IP を指すドメイン名を指す DNS レコードを作成します。オプション: リバース プロキシを使用して、セキュリティとパフォーマンスを向上させます。オプション: セキュリティを強化するために HTTPS を設定します。

7-zipの最大圧縮率設定、7zipを最小まで圧縮する方法 7-zipの最大圧縮率設定、7zipを最小まで圧縮する方法 Jun 18, 2024 pm 06:12 PM

ダウンロード Web サイトからダウンロードした圧縮パッケージは、解凍後に元の圧縮パッケージよりも大きくなり、クラウド ディスクにアップロードすると、小さいものでは数十 MB の差が生じることがわかりました。有料のスペースは、ファイルが小さい場合は問題ありませんが、ファイルが多数ある場合、ストレージのコストが大幅に増加します。私はそれを具体的に勉強したので、必要に応じてそこから学ぶことができます。圧縮レベル: 9-極度の圧縮 辞書サイズ: 256 または 384、辞書が圧縮されるほど遅くなります。256MB より前では圧縮率に大きな違いがあり、384MB 以降では圧縮率に違いはありません。最大 273 パラメータ: f=BCJ2、テストおよび追加パラメータの圧縮率が高くなります

Golang を使用して HTTP リクエストのクエリ パラメータを設定する Golang を使用して HTTP リクエストのクエリ パラメータを設定する Jun 02, 2024 pm 03:27 PM

Go で HTTP リクエストのクエリ パラメータを設定するには、クエリ パラメータの名前と値をパラメータとして受け入れる http.Request.URL.Query().Set() メソッドを使用できます。具体的な手順は次のとおりです。 新しい HTTP リクエストを作成します。クエリパラメータを設定するには、Query().Set() メソッドを使用します。リクエストをエンコードします。リクエストを実行します。クエリパラメータの値を取得します(オプション)。クエリパラメータを削除します(オプション)。

nginx へようこそ!それを解決するにはどうすればよいですか? nginx へようこそ!それを解決するにはどうすればよいですか? Apr 17, 2024 am 05:12 AM

「nginx へようこそ!」エラーを解決するには、仮想ホスト構成を確認し、仮想ホストを有効にし、Nginx をリロードする必要があります。仮想ホスト構成ファイルが見つからない場合は、デフォルト ページを作成して Nginx をリロードすると、エラー メッセージが表示されます。が消え、ウェブサイトは通常のショーになります。

HTMLファイルからURLを生成する方法 HTMLファイルからURLを生成する方法 Apr 21, 2024 pm 12:57 PM

HTML ファイルを URL に変換するには Web サーバーが必要です。これには次の手順が含まれます。 Web サーバーを取得します。 Webサーバーをセットアップします。 HTMLファイルをアップロードします。ドメイン名を作成します。リクエストをルーティングします。

Nodejsプロジェクトをサーバーにデプロイする方法 Nodejsプロジェクトをサーバーにデプロイする方法 Apr 21, 2024 am 04:40 AM

Node.js プロジェクトのサーバー デプロイメント手順: デプロイメント環境を準備します。サーバー アクセスの取得、Node.js のインストール、Git リポジトリのセットアップ。アプリケーションをビルドする: npm run build を使用して、デプロイ可能なコードと依存関係を生成します。コードをサーバーにアップロードします: Git またはファイル転送プロトコル経由。依存関係をインストールする: サーバーに SSH で接続し、npm install を使用してアプリケーションの依存関係をインストールします。アプリケーションを開始します。node Index.js などのコマンドを使用してアプリケーションを開始するか、pm2 などのプロセス マネージャーを使用します。リバース プロキシの構成 (オプション): Nginx や Apache などのリバース プロキシを使用して、トラフィックをアプリケーションにルーティングします。

外部からnodejsにアクセスできますか? 外部からnodejsにアクセスできますか? Apr 21, 2024 am 04:43 AM

はい、Node.js には外部からアクセスできます。次の方法を使用できます。 Cloud Functions を使用して関数をデプロイし、一般にアクセスできるようにします。 Express フレームワークを使用してルートを作成し、エンドポイントを定義します。 Nginx を使用して、Node.js アプリケーションへのリバース プロキシ リクエストを実行します。 Docker コンテナを使用して Node.js アプリケーションを実行し、ポート マッピングを通じて公開します。

PHP を使用して Web サイトを展開および維持する方法 PHP を使用して Web サイトを展開および維持する方法 May 03, 2024 am 08:54 AM

PHP Web サイトを正常に展開して維持するには、次の手順を実行する必要があります。 Web サーバー (Apache や Nginx など) を選択する PHP をインストールする データベースを作成して PHP に接続する コードをサーバーにアップロードする ドメイン名と DNS を設定する Web サイトのメンテナンスを監視する手順には、PHP および Web サーバーの更新、Web サイトのバックアップ、エラー ログの監視、コンテンツの更新が含まれます。

See all articles