Nginx Rewriteの使用シナリオ 1. URL アドレスジャンプ。たとえば、ユーザーが pm.com にアクセスすると baidu.com にリダイレクトされ、ユーザーが http 経由でアクセスすると https にリダイレクトされます。 2. URL擬似静的は、動的ページを静的ページとして表示し、動的URLアドレスの過剰なパラメータが外部に露出することを減らし、セキュリティを向上させる技術です。 3. 検索エンジンのSEO最適化は、検索エンジンへのエントリをサポートするためにURLパスに依存しています。 4. ユーザーが閲覧する URL は、より標準化された外観になり、開発者や製品担当者のニーズを満たすように調整できます。 設定構文 正規表現の置換を書き換える [フラグ]; 4つの旗 last は後続の書き換え命令セットの処理を停止し、場所のスコープから抜け出して、変更された URI に一致する場所の検索を開始します。URL アドレスは変更されません。 break は後続の書き換え命令セットの処理を停止し、ロケーション スコープからジャンプせず、再検索せず、マッチングを終了し、URL アドレスは変更されません。 リダイレクトは 302 一時リダイレクトを返します。ブラウザのアドレス バーにはリダイレクトされた URL が表示され、クローラーは URL データベースを更新しません。 permanentは301パーマネントリダイレクトを返し、ブラウザのアドレスバーにはリダイレクトされたURLが表示され、クローラーはURLデータベースを更新します。 注意:lastとbreakを使用するとブラウザのアドレスは変更されませんが、redirectとpermanentを使用すると変更されます。 例えば: 場所 /abc/ { 書き換え ^/abc/(.*) /whsir/$1 break; 401 を返します。 } 場所 /opq/ { 最後に ^/opq/(.*) /whsir/$1 を書き換えます。 402 を返します。 } 場所 /whsir/ { 403 を返します。 } abcを入力した後、whsirの内容が一致する場合は200を返し、そうでない場合は404を返します。 opqを入力した後、whsirの内容が一致する場合は403を返し、そうでない場合は404を返します。 last と break は成功または失敗のステータス コードのみを返しますが、redirect と permanent は成功または失敗を返す前にまず 302 または 301 を返します。 よく使用される Nginx グローバル変数: 例: http://www.pm.com:99/aa/bb/test.php
ケース1: 外部ジャンプ lb01仮想マシンを開き、以前のカスタム構成ファイルを閉じて、新しい/etc/nginx/conf.d/rewrite.confを作成します。 注: ^/ は、ルートで始まるすべての URL (ここではルート ディレクトリは /pm_code、対応するドメイン名は www.pm.com) が Baidu にリダイレクトされることを意味します。 /etc/nginx/nginx.conf ファイルを変更する エラー ログ レベルを通知に変更して、リダイレクト情報を記録できるようにします (debug、info、notice、warn、error、crit、より多くの情報が記録されます) httpモジュールに1行追加する rewrite_log on; (書き換えログをオンにする) テスト ブラウザのアドレスバーにwww.pm.comと入力すると(ホストで既に設定済み)、Baiduのホームページにリダイレクトされます。 ケース2: 内部ジャンプ /etc/nginx/conf.d/rewrite.conf の内容を変更する /pm_codeにファイル2.html(コンテンツ222)を作成し、ブラウザにwww.pm.com/1.htmlと入力します。 エラーログの記録を表示する リターンの使用 上記の方法では、ブラウザのアドレスバーに 1.html が表示され、Web ページの内容は 2.html の内容になります。アドレスバーに 2.html を表示したい場合は、location の内容を return 302 /2.html; に変更するか、 .* /2.html redirect; と書き換えてください。 正規表現を使用する 例: www.pm.com/2020/* を www.pm.com/2019/* にリダイレクトします。 括弧は全体を表し、$1 は最初の括弧内の内容を表します。 http を https にリダイレクトする 注: nginx 1.14 以降では、ssl on と書く必要はありません。代わりに、listen フィールドに listen 443 ssl と書きます。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: MySQL ストアド プロシージャと共通関数のコード分析
1. Linuxディスクの状態を確認する df -lh lsblkコマンドは、使用可能なすべてのブロ...
序文mysql がデフォルトのデータベース パスを変更したため、サービスを開始できませんでした。ログ...
適切な設定を行うことで、Linux ユーザーにパスワードを定期的に変更させることができます。パスワー...
目次Refsとは何か1. 文字列型参照2. コールバック参照React.createRef() 4....
01. コマンドの概要貼り付けコマンドは各ファイルを列ごとに結合します。これは、2 つの異なるファイ...
目次序文記述子getとsetの詳細な説明オブジェクトの属性の乗っ取りオブジェクトのすべてのプロパティ...
max_allowed_packet は、受け入れるパケットのサイズを設定するために使用される ...
目次CentOS7をインストールする静的IPの設定viを使用してファイルを編集するCentOS7をイ...
初めてこのエッセイを使ったとき、私はかなりぎこちなく感じましたhtmlファイルコードをコピーコードは...
1. はじめに以前、「MySQL マスター スレーブ同期の原理」という記事を書きました。この記事を読...
MySQL 8.0.13 にはデフォルトでデータ フォルダがあります。このフォルダを削除する必要があ...
質問今日、プロジェクト関数を書いていたとき、金額の統計計算を行い、単位を変換する必要がありました。そ...
Mac で Docker を使用して Oracle をデプロイする方法まずdockerをインストール...
1. ソースコードの設計コードをコピーコードは次のとおりです。 <!DOCTYPE html ...
以下の属性はブラウザとの互換性があまりありません。 1.transform:rotate(45度) ...