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の主キー制約とユニーク制約の違いについて簡単に説明します。

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

推薦する

ウェブページの読み込み速度を上げる25の方法とヒント

はじめに<br />誰もが高速インターネット接続にアクセスできるわけではありません。たと...

React onClickにパラメータを渡す問題について話しましょう

背景下のようなリストでは、削除ボタンをクリックすると削除操作を実行する必要があります。 リスト生成:...

HTML 固定タイトル列、タイトル ヘッダー テーブル固有の実装コード

コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...

WeChatアプレットはシンプルなチャットルームを実装します

この記事では、WeChatアプレットの具体的なコードを共有し、簡単なチャットルームを実装します。具体...

js キャンバスはランダムなパーティクル効果を実現します

この記事の例では、参考のためにjsキャンバスランダムパーティクルエフェクトの具体的なコードを共有して...

MySQLの文字タイプは大文字と小文字を区別します

デフォルトでは、MySQLの文字タイプは大文字と小文字を区別しません。つまり、name='A...

Dockerモードで起動したTomcatのホームページにアクセスすると404エラーが発生する

シナリオ: docker で tomcat を起動すると (Alibaba Cloud からダウンロ...

Linux の権限管理コマンド (chmod/chown/chgrp/unmask) の詳細な説明

目次chmod例権限に関する特別な注意分析するチョーンchgrp umask Linux オペレーテ...

MySQL 8.0 ディクショナリテーブル拡張の詳細な説明

MySQL のデータ ディクショナリは、データベースの重要なコンポーネントの 1 つです。INFOR...

Docker 経由で Redis 6.x クラスターをデプロイする方法

システム環境: Redis バージョン: 6.0.8 Docker バージョン: 19.03.12シ...

IE8でラベルの背景画像が表示されない問題の解決方法

今日、ちょっとした問題に遭遇し、長い間苦労しました。そのことを皆さんにシェアしたいと思います。 a ...

Nginx で何ができるかの包括的な分析

序文この記事は、サードパーティのモジュールをロードせずにNginxで処理できることのみに焦点を当てて...

VUE ユニアプリの条件付きコーディングとページレイアウトに関する簡単な説明

目次条件付きコンパイルページレイアウト要約する条件付きコンパイル条件付きコンパイルでは、特別なコメン...

MySQLにおける遅いSQLの最適化の方向性について詳しく話しましょう

目次序文SQL文の最適化遅いクエリSQLを記録する設定を変更する方法スロークエリログを表示するSQL...

CSS で div にスクロールを追加し、スクロール バーを非表示にする

CSS は div にスクロールを追加し、スクロール バーを非表示にします。具体的なコードは次のとお...