ローカル画像サーバーのNginx構成の実装

ローカル画像サーバーのNginx構成の実装

1. Nginx の紹介

Nginx はリバース プロキシ サーバーです。

まず、プロキシ サーバーとは何かを見てみましょう。プロキシ サーバーとは、一般的に、プロキシ サービスを介してインターネット上のサーバーにリクエストを送信するローカル エリア ネットワーク内のマシンを指します。プロキシ サーバーは、一般的にクライアント上で動作します。たとえば、GoAgent、FQ アーティファクト。

画像

完全なプロキシ要求プロセスは次のとおりです。クライアントは最初にプロキシ サーバーとの接続を確立し、次にプロキシ サーバーが使用するプロキシ プロトコルに従って、ターゲット サーバーとの接続を確立するか、ターゲット サーバーの指定されたリソースを取得するように要求します。 Web プロキシ サーバーは、ネットワーク内の中間エンティティです。プロキシは Web クライアントと Web サーバーの間に位置し、「仲介者」として機能します。
HTTP プロキシ サーバーは、Web サーバーと Web クライアントの両方です。

プロキシ サーバーは、クライアントと Web サーバーの間にある別のサーバーです。これにより、ブラウザーは Web サーバーに直接アクセスして Web ページを取得するのではなく、プロキシ サーバーに要求を送信します。信号は最初にプロキシ サーバーに送信され、プロキシ サーバーはブラウザーに必要な情報を取得してブラウザーに送信します。

フォワード プロキシは、クライアントと元のサーバーの間にあるサーバーです。元のサーバーからコンテンツを取得するには、クライアントはプロキシにリクエストを送信し、ターゲット (元のサーバー) を指定します。プロキシは、リクエストを元のサーバーに転送し、取得したコンテンツをクライアントに返します。フォワード プロキシを使用するには、クライアントで特別な設定を行う必要があります。

リバース プロキシ サーバー: サーバー側でクライアント要求を受信し、要求を特定のサーバーに分散して処理し、サーバーの応答結果をクライアントにフィードバックします。 Nginx はリバース プロキシ サーバー ソフトウェアの 1 つです。
Nginx: Nginx (「エンジン x」) は、ロシア人の Igor Sysoev によって作成された高性能 HTTP およびリバース プロキシ サーバーです。また、IMAP/POP3/SMTP プロキシ サーバーでもあります。つまり、Nginx 自体が Web サイトをホストし、HTTP サービス処理を実行し、リバース プロキシ サーバーとしても使用できます。

フォワード プロキシ クライアントは、フォワード プロキシ サーバーを設定する必要があります。もちろん、前提条件として、フォワード プロキシ サーバーの IP アドレスとプロキシ プログラムのポートを知っている必要があります。
リバース プロキシはフォワード プロキシの逆です。クライアントにとって、プロキシ サーバーは元のサーバーのように見え、クライアントは特別な設定を行う必要がありません。クライアントはリバース プロキシの名前空間内のコンテンツに通常の要求を送信し、リバース プロキシは要求を転送する元のサーバーを決定し、取得したコンテンツをクライアントに返します。

2. 画像サーバーの構築

nginx をローカルにインストールしたら、ポート経由でアクセスできるようになります。デフォルトのポートはポート 80 です。ローカルのポート 80 と競合するため、8089 に変更しました。

画像-20211210195430120

この時点で nginx は正常に起動しており、次に nginx ディレクトリの下に、次のように設定する必要があるイメージ パスを追加します。

		#画像コードの場所を追加 ~ .*\.(gif|jpg|jpeg|png)$ {  
      24時間で期限切れになります。  
      root H:/radar/;#画像保存パスを指定します access_log H:/radar/log;#画像パス proxy_store on;  
      proxy_store_access ユーザー:rw グループ:rw すべて:rw;  
      proxy_temp_path H:/radar/;#画像パス proxy_redirect off;  
      
      proxy_set_header ホスト 127.0.0.1;  
      proxy_set_header X-Real-IP $remote_addr;  
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
      クライアントの最大ボディサイズは10mです。  
      クライアントボディバッファサイズ 1280k;  
      プロキシ接続タイムアウト 900;  
      プロキシ送信タイムアウト 900;  
      プロキシ読み取りタイムアウト 900;  
      プロキシバッファサイズ 40k;  
      プロキシバッファ 40 320k;  
      proxy_busy_buffers_size 640k;  
      proxy_temp_file_write_size 640k;  
      if ( !-e $リクエストファイル名)  
      {  
      proxy_pass http://127.0.0.1:8089; #プロキシアクセスアドレス}  
      }    

上記の構成に従って、必要なパスを見つけます。その後、サービスを再起動すると、設定した画像が表示されます。下の図に示すように

画像-20211210195955312

この時点で、シンプルな nginx イメージ サーバーが構築されました。 Nginx でローカル イメージ サーバーを構成する方法については、これで終わりです。Nginx ローカル イメージ サーバーの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Linux サーバー上のローカル静的リソースにアクセスするために nginx を使用する方法
  • Nginx サーバーでローカル ブラウザ キャッシュを設定する簡単な方法を説明します。
  • Nginxサーバのブラウザローカルキャッシュと仮想マシンの関連設定

<<:  CSS における z-index: 0 と z-index: auto の違い

>>:  HTMLとは何ですか?

推薦する

Centos7 に PHP と Nginx をインストールする詳細なチュートリアル

Centos のサーバー側への適用がますます普及するにつれて、Centos7 もますます使用されるよ...

デザイン理論:計画、リソース、コミュニケーションの問題について

<br />多くの中小企業ではこの問題は発生しません。中小企業はデザイナーをサポートし、...

LNMP と phpMyAdmin を Docker にデプロイする方法

環境準備:複数のコンテナに基づいてホストに lnmp をデプロイします。 nginx サービス: 1...

JDカルーセル効果を実現するための純粋なHTMLとCSS

JD カルーセルは、動的な効果を追加せず、主に位置決めの知識を使用して、純粋な HTML と CS...

IE7 互換モードで IE8 を有効にするコード

最も人気のあるタグはIE8ですブラウザベンダーはバージョンアップデートのリリースに躍起になっている一...

CentOS 6.9 で glibc ダイナミック ライブラリをアップグレードする詳細なプロセス

glibc は、gnu によってリリースされた libc ライブラリ、つまり c ランタイム ライブ...

Vue3 コンポジション API の紹介

目次概要例なぜそれが必要なのでしょうか?設定参照、反応的計算して見るライフサイクルVue3.0 は ...

HTML 順序なしリスト 箇条書き 画像を使用した CSS の記述

少なくとも 5 冊のベストセラー書籍の順序なしリストを含む HTML ページを作成します。各書籍の前...

超詳細なMySQL使用仕様の共有

最近、データベース関連の操作が多くなり、会社の既存の仕様はあまり包括的ではありません。インターネット...

JavaScript 遅延読み込みの詳細な説明

目次遅延読み込みCSS スタイル: HTML部分:スクリプト部分:要約する遅延読み込み名前の通り、私...

JSは賞金の重さに基づいて当選確率を計算します

目次1. シナリオ例1.1. 抽選の賞品名を設定する1.2. 各賞の重みを設定する1.3. ラッキー...

チェックボックスの不確定プロパティの使用の紹介

Windows XP でフォルダーのプロパティ ダイアログ ボックスを使用すると、フォルダーの属性カ...

DockerコンテナにRedisをデプロイする手順の紹介

目次1 つの Redis 設定ファイル2 Dockerコマンドの開始3 docker-compose...

Linux で MySQL 8.0 サービスを完全に削除する方法

この記事を読む前に、Linuxコマンド、特にcentos7.3環境でyumを使用してインストールされ...

2列の水平タイムラインを実装するためのVueサンプルコード

目次1.コンポーネントtimelineH.vueを実装する2. コンポーネントの呼び出しこの記事では...