ホームページ  >  記事  >  システムチュートリアル  >  Nginx が 301 リダイレクト メソッドを実装する方法の違い

Nginx が 301 リダイレクト メソッドを実装する方法の違い

王林
王林転載
2024-01-02 09:45:45642ブラウズ

Nginx が 301 リダイレクト メソッドを実装する方法の違い

Nginx には 3 つの一般的な 301 ジャンプがありますが、それらはすべて同じ目的を達成できます。ただし、3 つの記述方法には依然として違いがあり、主な違いは通常のマッチングのパフォーマンスです。

最初の方法: rewrite コマンドを使用して正規表現ですべての URI を照合し、先頭の最初の / (バックスラッシュ) を削除します。

^/(.*)$ を書き換えます https://www.hi-linux.com/$1;

2 番目: rewrite コマンドも使用しますが、異なる点は、すべての URI が $request_uri 変数を通じて照合されることです。

書き換え ^ https://www.hi-linux.com$request_uri? 永続的;

この方法で記述する利点は、最初の最初のバックスラッシュを削除するプロセスが節約され、通常のマッチングのパフォーマンスが向上することです。

3 番目の方法: return コマンドを使用して、これが 301 リダイレクトであることを Nginx に直接伝え、301 ステータス コードと $request_uri パラメーターを通じて指定された URI を取得します。

return 301 https://www.hi-linux.com$request_uri;

書き換えディレクティブには多くの記述方法とルールがあるため、この方法はパフォーマンスの点で最高です。すべての通常の一致が実行された後でのみ、Nginx はこれが 301 永続的なリダイレクトであることを認識します。

上記 3 つの書き込み方法を通じて、301 ジャンプでは、rewrite 命令よりも return 命令の方が性能的に有利であることがわかります。アクセス数が多くない場合、いくつかの書き込み方法のパフォーマンスの差は大きくありませんが、アクセス数が多い場合には、小さな最適化がビジネス システムのパフォーマンス向上に大きな役割を果たす可能性があります。

以上がNginx が 301 リダイレクト メソッドを実装する方法の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlinuxprobe.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。