Nginx は動的と静的の分離を実装します 例の説明

Nginx は動的と静的の分離を実装します 例の説明

ウェブサイトの解析を高速化するために、動的ページと静的ページを異なるサーバーで解析して、解析速度を向上させることができます。元の単一サーバーへの負荷を軽減します。 簡単に言えば、正規表現を使用して一致とフィルタリングを行い、それらをさまざまなサーバーに送信します。

1. 環境を整える

それぞれ動的と静的を処理するために、2 つの http 用の nginx プロキシを準備します。

1. コンパイルおよびインストールされた nginx をリバース プロキシ アップストリームとして構成します。

アップストリーム静的{
サーバー 10.0.105.196:80 重み=1 max_fails=1 fail_timeout=60s;
}
アップストリームphp {
サーバー 10.0.105.200:80 重み=1 max_fails=1 fail_timeout=60s;
}

サーバー{
listen server_name
#動的リソースの読み込み 80;
ローカルホスト
場所 ~ \.(php|jsp)$ { proxy_pass http://phpserver;

proxy_set_header ホスト $host:$server_port; proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

#静的リソースの読み込み場所 ~ \.(html|jpg|png|css|js)$ { proxy_pass http://static; proxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

静的リソース構成---10.0.105.196

サーバー{
聞く 80;
server_name ローカルホスト;

場所 ~ \.(html|jpg|png|js|css)$ { root /var/www/nginx;
}
}

写真をアップロード

動的リソース構成: 10.0.105.200

php7.1 をインストールします

[root@nginx-server ~]#rpm -Uvh https://mirror.webtatic.com/yum/el7/epel- release.rpm

[root@nginx-server ~]#rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic- release.rpm

[root@nginx-server ~]#yum インストール php71w-xsl php71w php71w-ldap php71w-cli php71w-common php71w-devel php71w-gd php71w-pdo php71w-mysql php71w-mbstring php71w-bcmath php71w-mcrypt -y

[root@nginx-server ~]#yum install -y php71w-fpm [root@nginx-server ~]#systemctl start php-fpm [root@nginx-server ~]#systemctl enable php-fpm

nginx 設定ファイルを編集します。

[root@nginx-server ~]# cd /etc/nginx/conf.d/ [root@nginx-server conf.d]# vim phpserver.conf server {

聞く 80;

server_name localhost; location ~ \.php$ {

root /home/nginx/html; #ウェブサイトのディレクトリを指定する

fastcgi_pass fastcgi_index fastcgi_param

#サイトルートディレクトリ、ルート構成項目によって異なります

含む

}

}

127.0.0.1:9000; #アクセスアドレスを指定する

インデックス.php;

#デフォルトファイルを指定する

SCRIPT_FILENAME $document_root$fastcgi_script_name;

fastcgi_params; #nginx定数の定義が含まれています

静的ページにアクセスすると、場所が(html|jpg|png|js|css)に一致し、静的サーバーに転送されます。静的サービスは

リクエストを処理するために、通常の場所の一致が使用されます。

動的ページにアクセスすると、場所は .\php で終わるファイルと一致し、バックエンドの PHP サービスに転送してリクエストを処理します。

知識ポイントの拡張:

リクエストに応じて切り離す

[root@lb01 conf]# vim nginx.conf
ワーカープロセス 1;
イベント {
  ワーカー接続 1024;
}
http {
  mime.types を含めます。
  デフォルトタイプ アプリケーション/オクテットストリーム;
  ファイル送信オン;
  キープアライブタイムアウト65;
アップストリームスタックプール{
    サーバー 172.25.254.134:80 重み=5;
}
アップストリームダイナミックプール{
    サーバー 172.25.254.135:80 重み=5;
}
  サーバー{
    聞く 80;
    サーバー名 www.lbtest.com;
    位置 / {
      ルートhtml;
      インデックス index.html index.htm;
      proxy_set_header ホスト $host;
      proxy_pass http://dynamic_pools;
    }
    場所 /画像/ {
      proxy_set_header ホスト $host;
    proxy_pass http://stack_pools;
    }
    場所 /dynamic/ {
      proxy_set_header ホスト $host;
    proxy_pass http://dynamic_pools;
    }
  }
}
[root@lb01 conf]# nginx -s リロード

拡張子で区切る

[root@lb01 conf]# vim nginx.conf

 ワーカープロセス 1;
イベント {
  ワーカー接続 1024;
}
http {
  mime.types を含めます。
  デフォルトタイプ アプリケーション/オクテットストリーム;
  ファイル送信オン;
  キープアライブタイムアウト65;
アップストリームスタックプール{
    サーバー 172.25.254.134:80 重み=5;
}
アップストリームダイナミックプール{
    サーバー 172.25.254.135:80 重み=5;
}
  サーバー{
    聞く 80;
    サーバー名 www.lbtest.com;
    位置 / {
      ルートhtml;
      インデックス index.html index.htm;
      proxy_set_header ホスト $host;
      proxy_pass http://dynamic_pools;
    }
    場所 ~ .*.(jpg|png|gif|css|js|swf|bmp|jsp|php|asp)$ {
    proxy_set_header ホスト $host;
    proxy_pass http://stack_pools;
    }
  }
}
[root@lb01 conf]# nginx -s リロード

nginx で動的と静的の分離を実装する例についての記事はこれで終わりです。nginx で動的と静的の分離を実装する例についてさらに詳しく知りたい場合は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • 動的および静的分離のための Apache または Tomcat を使用した Nginx の基本構成例
  • Nginx+uWsgi を使用して Python の Django フレームワーク サイトの動的部分と静的部分を分離する
  • nginx + tomcatリバースプロキシと動的および静的分離のシンプルな実装
  • 静的Tomcatと動的Tomcatを分離するnginxの詳細な説明
  • nginxは負荷分散と動的および静的分離を実現します
  • 動的および静的分離を実装するための Nginx サンプル コード
  • Nginx+Apache の動的および静的分離の導入の詳細な例
  • 動的および静的分離を実現する nginx のサンプルコード
  • Nginx の動的および静的分離実装ケースのコード分析
  • Springmvc nginxで動的と静的の分離を実現するプロセスの詳細な説明
  • 負荷分散と動的および静的分離操作を実現するDocker NginxコンテナとTomcatコンテナ
  • 負荷分散と動的・静的分離を実現するNginx+Tomcatの原理の分析
  • Nginx の負荷分散と動的および静的分離の原理と構成
  • nginx が動的と静的の分離を実装する方法の例
  • インストールから設定までの nginx の詳細な手順 (インストール、セキュリティ設定、ホットリンク防止、動的および静的分離、HTTPS 設定、パフォーマンスの最適化)
  • Nginx+Tomcat 負荷分散と動的および静的分離クラスタの実装
  • 動的および静的分離を実現するサーバー負荷分散 nginx+tomcat
  • Nginx の動的および静的分離構成の実装と説明

<<:  JSはじゃんけんゲームを実装します

>>:  Windows での MySQL 8.0.18 インストール チュートリアル (図解)

推薦する

3列レイアウトを実現するCSS3フレキシブルボックスフレックス

タイトルの通り、高さは既知で、左と右の列の幅は 300 ピクセル、中央は適応型です。弾性ボックス自体...

Firefox で Webdings フォントをサポートする方法

Firefox、Opera、その他のブラウザは Webdings フォントをサポートしていません。回...

VMware インストール エラー VMware Workstation が VMware 認証サービスを開始できませんでした

背景: SAP ECC サーバーをインストールし、XP をプレインストールしたいと考えています。XP...

MySQLのインストールと設定に関する詳細なチュートリアル

目次インストール不要のMySQLバージョン1. インストール パッケージをダウンロードします。 2....

React の 10 個のフックの紹介

目次ReactHook とは何ですか? Reactは現在フックを提供している1. 使用状態2.use...

Windows 64 ビットでの MySQL 8.0.13 のインストールと設定方法のグラフィック チュートリアル

この記事では、MySQL 8.0.13のインストールと設定のチュートリアルを参考までに紹介します。具...

PHP スケジュールバックアップ MySQL および mysqldump 構文パラメータの詳細

まず、MySQL バックアップ コマンド mysqldump の一般的な操作例をいくつか紹介します。...

現在のMySQL接続数を表示する方法の詳細な説明

1. 現在のすべての接続の詳細情報を表示します。 ./mysqladmin -uadmin -p -...

JavaScriptオフセットは、ウィンドウ内でのマウス座標の取得とモジュールのドラッグを実装します。

オフセットOffset はオフセットです。関連プロパティの offset シリーズを使用すると、次の...

Mac に mysql5.7 をインストールするための完全な手順 (画像とテキスト付き)

最近、Mac システムを使用して、ローカル Web サーバー環境を構築する準備をしていました。 Ma...

Vueはユーザーログインとトークン検証を実装します

フロントエンドとバックエンドを完全に分離する場合、Vue プロジェクトでトークン検証を実装する一般的...

ウェブデザインの仕事に応募する方法

<br />みなさんこんにちは!ここで皆さんとチャットできて光栄です! (*^__^*)...

JavaScript 関数呼び出し、適用、バインド メソッドのケース スタディ

要約する1. 類似点どちらも、ターゲット関数が実行されると内部の this ポインターを変更できます...

MySQL 5.7 以降のバージョンのダウンロードとインストールのグラフィック チュートリアル

1. ダウンロード1. MySQL公式サイトのダウンロードアドレス: https://downloa...

koa2 サービスに SSL を設定する方法

I. はじめに1: SSL証明書私のドメイン名は Tencent Cloud にあります。第 3 レ...