Nginx ロケーション設定のチュートリアル (ゼロから)

Nginx ロケーション設定のチュートリアル (ゼロから)

基礎

位置の一致順序は、「最初に正規表現に一致し、次に共通表現に一致」です。

実際のロケーションの一致順序は、「最初に共通を一致させ、次に通常を一致させる」です。誤解の理由は、通常のマッチングが通常のマッチングを上書きするからです

Nginx ロケーション設定構文

1. location [ = | ~ | ~* | ^~ ] uri { ... }

2. location @name { ... }

ロケーション設定を構成する方法は2つあります

1. プレフィックス + uri (文字列/正規表現)

2.@ + 名前

接頭辞の意味

= : 完全一致(すべて等しい必要があります)

~ : 大文字と小文字を区別します

~* : 大文字と小文字を区別しない

^~ : uri部分のみ一致

@: 内部サービスジャンプ

ロケーションの基本

1.location は server ブロックで構成されます。

2. 異なる URI に応じて異なる構成 (場所で構成) を使用して、異なるリクエストを処理できます。

3. 場所は順序付けられ、最初に一致した場所によって処理されます。

ロケーション設定デモ

1.=、完全一致

  場所 = / {
   #ルール}
  # `http://www.example.com/` のようなリクエストに一致します。

2.~、大文字と小文字を区別

  場所 ~ /例/ {
    #ルール}
  #リクエスト例#http://www.example.com/Example/ [成功]
  #http://www.example.com/example/ [失敗]

3.~*、大文字と小文字を区別しない

 場所 ~* /例/ {
    #ルール}
 # uri 部分の大文字と小文字は無視されます #http://www.example.com/Example/ [成功]
 #http://www.example.com/example/ [成功]

4.^~はuriで始まる文字列にのみ一致します

 場所 ^~ /img/ {
   #ルール}
 #/img/ で始まるリクエストは #upload/2022/web/a.jpg と一致します [成功]
 #http://www.example.com/img/b.mp4 [成功]

5.@、nginx内部ジャンプ

 場所 /img/ {
  エラーページ 404 @img_err;
 }
 
 場所 @img_err {
  # ルール}
 #/img/ で始まるリクエストの場合、リンク ステータスが 404 の場合。 @img_err ルールに一致します。

要約する

Nginx 内の場所は、思ったほど理解するのが難しくないので、心配しないでください。さらに詳しい情報を見つけて、試してみてください。何かを得るでしょう。

参照する

  • http://nginx.org/en/docs/http/ngx_http_core_module.html#場所
  • 統一リソース識別子

さて、以上がこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM をご愛顧いただきありがとうございます。

以下もご興味があるかもしれません:
  • フロントエンドとバックエンドを分離した nginx 構成を展開するための完全な手順
  • サーバー上で Nginx を使用して Springboot プロジェクトをデプロイする方法の詳細なチュートリアル (jar パッケージ)
  • Nginx サーバーのセットアップと基本構成の詳細な説明
  • nginx 構成サービスを開始する方法の詳細なチュートリアル
  • 初心者でも基礎知識なしでNginxサービスの導入を完了できます

<<:  nestjs からフロントエンドに返されるデータ形式のカプセル化実装

>>:  MySQL の binlog ログと、binlog ログを使用してデータを回復する方法を説明します。

推薦する

202 無料の高品質 XHTML テンプレート (2)

前回の記事「202 個の無料高品質 XHTML テンプレート (1)」に続き、123WORDPRES...

ブリージングカルーセルを実装するネイティブJS

今日は、ネイティブ JS で実装されたブリージング カルーセルを紹介します。効果は次のとおりです。 ...

ページのスクロールバーを無効にするには、overflow: hiddenを使用します。

コードをコピーコードは次のとおりです。 html {オーバーフロー: 非表示; }体{オーバーフロー...

antd+reactプロジェクトをviteに移行するためのソリューションの詳細な説明

Antd+react+webpackは、多くの場合、Reactテクノロジースタックに基づくフロントエ...

オブジェクトのプロパティを反復処理する際の TypeScript の問題

目次1. 問題2. 解決策1. オブジェクトをanyとして宣言する2. オブジェクトのインターフェー...

シェルスクリプトはNginxのaccess.logのPVを定期的にカウントし、APIに送信してデータベースに保存します。

1. PVとIPの統計一日のPV(ページビュー)をカウントする cat access.log | ...

rpm を使用して指定されたバージョンの docker (1.12.6) をインストールする詳細な手順

1. 理由システムが Centos7.3 の場合、yum install docker を使用して直...

IDEA で Docker プロジェクトをデプロイする手順

現在、ほとんどのプロジェクトが Docker 上にデプロイされ始めていますが、デプロイのプロセスはま...

MySQL DDLステートメントの使用

序文SQL の言語分類には主に以下の種類があります。 DDLデータ定義言語作成、削除、変更データ定義...

シンプルなスネークゲームを実現するネイティブjs

この記事では、スネークゲームを実装するためのjsの具体的なコードを参考までに共有します。具体的な内容...

レスポンシブ原則をシミュレートするための基礎コードの Vue 実装の例

目次1.Vue.js の機能: 2.Observer.js 関数 (データハイジャック): 3. C...

Webpack でよく使われる 12 個の Loader を共有する (要約)

目次序文スタイルローダーCSSローダーsassローダーpostcssローダーバベルローダーtsローダ...

MySQL が group by をサポートしない場合の解決策の概要

MySQL 5.7.x の最新バージョンをダウンロードしてインストールしました。デフォルトでは、on...

jsは、州、市、地区の3レベルのリンクの非選択ドロップダウンボックスバージョンを実現します。

インターネットで3レベルリンクを検索したところ、すべてオプションで書かれていました。突然、別の方法で...

vue-router を遅延ロードする 3 つの方法のまとめ

遅延読み込みを使用しない 'vue' から Vue をインポートします。 '...