Nginx リバース プロキシ学習例チュートリアル

Nginx リバース プロキシ学習例チュートリアル

1. リバースプロキシの準備

1. LinuxシステムにTomcatをインストールする

tomcat を /usr/src に解凍します。起動するにはjdk環境が必要です。 jdk 環境がない場合はインストールしてください。私の Centos7 には jdk1.8 が付属しています。

画像の説明を追加してください

2. Tomcatを起動する

tomcat の bin ディレクトリに入ると、startup.sh ファイルがあります。

画像の説明を追加してください

./startup.shはTomcatサーバーを起動します

画像の説明を追加してください

3. 外部アクセスに開放されたポート

現在開いているポート番号を表示する

ファイアウォールコマンド --list-all

開いているポート番号を設定する

ファイアウォールコマンド --add-port=80/tcp --permanent
ファイアウォールコマンド --add-port=8080/tcp --permanent

ファイアウォールを再起動する

ファイアウォール-cmd --reload

4. tomcatへのアクセスをテストする

http://192.168.1.173:8080/

画像の説明を追加してください

これで事前準備完了です!!

2. リバースプロキシケース(I)

1. 成果を達成する

ブラウザを開き、ブラウザのアドレスバーにwww.123.comと入力して、LinuxシステムのTomcatページに移動します。

画像の説明を追加してください

2. 具体的な構成

ステップ1: ローカルの/etc/hostsファイルに追加する

画像の説明を追加してください

2番目のステップは、nginxでリクエスト転送を構成することです(リバースプロキシ構成)

/usr/local/nginx/conf をコピーします。
vim nginx.conf

コンテンツを修正して追加する

画像の説明を追加してください

3. テスト

www.123.comをご覧ください

画像の説明を追加してください

nginx の IP にアクセスして tomcat にアクセスします。成功しました。 ! ! !

2. リバースプロキシケース(II)

成果を達成する

nginx リバース プロキシを使用して、アクセス パスに応じて異なるポートのサービスにジャンプします。nginx のリスニング ポートは 9001 です。

  • http://192.168.1.173/edu/ にアクセスし、192.168.1.173:8080 に直接ジャンプします。
  • http://192.168.1.173:9001/vod/ にアクセスし、192.168.1.173:8081 に直接ジャンプします。

1. 準備

(1)ポート8080とポート8081を持つ2つのTomcatサーバーを用意する

(2)フォルダを2つ作成し、各フォルダにTomcatの圧縮パッケージを入れて解凍し、いずれかのTomcatファイルのconfファイルにあるserver.xmlファイルを変更してポートを8081に変更します。

(3)webappsファイルの下にeduフォルダとvodフォルダを作成し、そのフォルダ内にポート番号を表示するa.htmlテストページを作成します。

2. 具体的な構成

(1)nginx設定ファイルを見つけてリバースプロキシを設定する

画像の説明を追加してください

(2)外部アクセス用のポートを開く:9001 8080 8081

場所指令の説明

このディレクティブはURLを一致させるために使用されます

構文は次のとおりです。

場所 [ = | ~ | ~* | ^~] uri {

}

1. =: 正規表現を含まないURIの前に使用され、リクエスト文字列がURIと厳密に一致することを要求します。一致する場合

成功した場合は、それ以上の検索を中止し、リクエストを直ちに処理します。

2. ~: URI に正規表現が含まれており、大文字と小文字が区別されることを示すために使用されます。

3. ~*: URI に正規表現が含まれており、大文字と小文字が区別されないことを示すために使用されます。

4. ^~: 正規表現なしでURIの前に使用され、Nginxサーバーが識別子URIとリクエスト文字列を見つけることを要求する

文字列の一致度が最も高い場所が見つかった後、その場所の代わりにこの場所を使用してリクエストが直ちに処理されます。

ブロック内の通常の URI は、リクエスト文字列と照合されます。

注: URI に正規表現が含まれている場合は、~ または ~ 記号が存在する必要があります *

最終テスト

画像の説明を追加してください画像の説明を追加してください

要約する

Nginx リバース プロキシの学習に関するこの記事はこれで終わりです。より関連性の高い Nginx リバース プロキシ コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Nginxリバースプロキシはさまざまな状況でのクロスドメインの問題を解決します
  • Nginx ルーティング転送とリバースプロキシロケーション構成の実装
  • Nginx イントラネット スタンドアロン リバース プロキシの実装
  • Nginx リバース プロキシを使い始める
  • nginx リバースプロキシと詳細な使用方法

<<:  MYSQLの主キー制約とユニーク制約の違いについて簡単に説明します。

>>:  選択を読み取り専用で編集不可に設定し、選択値を通過可能に設定する方法

推薦する

CSSにおけるマージン値と垂直マージンの重なりについて

平行ボックスの余白 (二重余白の重なり) に関する面接の質問: 1 つのボックスに上余白があり、もう...

動的な背景グラデーション効果を実現するCSS3

CSS3 を学ぶということは、新しい機能と基本的な理論に慣れることを意味します。この記事では、ケー...

MySQL でスロークエリログ機能を有効にする方法

MySQL スロー クエリ ログは、問題のあるクエリを追跡するのに非常に役立ちます。現在のプログラム...

VUE と Canvas を使用して Thunder Fighter タイピング ゲームを実装する方法

今日は、サンダーファイタータイピングゲームを実装します。ゲームプレイは非常に簡単です。それぞれの「敵...

MYSQL 演算子の概要

目次1. 算術演算子2. 比較演算子3. 論理演算子4. ビット演算子5. 演算子の優先順位1. 算...

HTML テーブルレイアウト例の説明

HTML ドキュメント内の要素は次々に配置され、ブロックレベル要素の前後に改行が追加されるだけで、合...

JSは円形のプログレスバーのドラッグとスライドを実装します

この記事の例では、円形のプログレスバーのドラッグアンドスライドを実現するための具体的なJSコードを紹...

CentOS7にNginxをインストールして自動起動を設定する方法

1.公式サイトからインストールパッケージをダウンロードするhttp://nginx.org/en/d...

react+antdプロジェクトをゼロから構築する方法を教えます

これまでの記事はすべて私自身の学習記録であり、主に以前に遭遇した落とし穴を忘れないようにするためのも...

...

MySQL ALTERコマンドの知識ポイントのまとめ

テーブル名を変更したり、テーブル フィールドを変更したりする必要がある場合は、 MySQL ALTE...

仮想マシンのディスクサイズを拡張する方法

Vmvare が仮想マシンのディスク サイズを設定した後、ディスク領域が不足していることがわかりまし...

登録フォームのデザインルール

随分前に「Patterns for Sign Up & Ramp Up」を読み終えました。今...

MySQLデータテーブルの基本操作:テーブル構造の操作、フィールド操作例の分析

この記事では、テーブル構造操作やフィールド操作など、MySQL データ テーブルの基本的な操作につい...