最近仕事でnginxの設定を変更する必要が頻繁にあり、nginxでrewriteを使用する方法を学びました URLリダイレクト ここで言う URL リダイレクトとは、ユーザーが URL にアクセスしたときに別の URL にリダイレクトされることを意味します。 一般的なアプリケーション シナリオは、複数のドメイン名を同じ URL にリダイレクトすることです (たとえば、古いドメイン名を新しいドメイン名にリダイレクトします)。 静的ファイルリクエストを CDN などにリダイレクトします。 ユーザーのデバイスに応じて、異なるサイト(PC版、WAP版)等にジャンプします。 URLリダイレクトは、jsを通じてページにwindow.locationを設定することで実現できます。 PHPでヘッダーを設定することでも実現できます もちろん、nginxの書き換え機能を使って実現することもできます。 nginx 書き換えモジュール rewriteはnginxの静的書き換えモジュールです 基本的な使用法は、パターンの書き換えとフラグの置き換えです。 patten は正規表現です。patten に一致する URL は replace として書き換えられます。flag はオプションです。 たとえば、古いドメイン名を新しいドメイン名にリダイレクトする サーバ { 聞く 80; サーバー名 www.old.com; 「.*」をhttp://www.new.comに書き換えます。 } 新しいドメインにリダイレクトするときにパスを維持する サーバ { 聞く 80; サーバー名 www.old.com; 「^/(.*)$」を書き換える http://www.new.com/$1; } 書き換えとロケーションが連携して画像ファイルを CDN にジャンプします 場所 ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { 有効期限は30日です。 "^/uploadfile\/(.*)$" http://static.XXX.com/uploadfile/$1 を書き換えます。 } 書き換え後にフラグを追加できます。フラグ タグは次のとおりです。 lastはApacheの[L]マークに相当し、書き換えが完了したことを示します。 break はマッチを終了し、次のルールにマッチしなくなります。 リダイレクトは 302 一時リダイレクトを返します。アドレス バーにはリダイレクトされたアドレスが表示されます。 永久リターン301永久リダイレクトアドレスバーにはジャンプ後のアドレスが表示されます nginx rewrite を使用して URL リダイレクトを実現する上記の方法は、私が皆さんに共有できるすべてです。これが皆さんの参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MySQL 5.7.23 のインストールと設定のグラフィックチュートリアル
>>: JavaScript はクラス宝くじアプレットを実装します
画像をプルする docker pull season/fastdfs:1.2トラッカーを開始 doc...
ローカルの MySQL バージョンが比較的低いため、最近 MySQL のバージョンをアップグレードす...
webpackはCSSファイルとその設定をロードします複数の CSS ファイルを作成した後、HTML...
この記事の著者@子木yoyoが個人ブログに投稿したものです。 Web ページでもモバイル アプリでも...
Baidu によって定義されているデッドリンク形式には 2 種類あります。 1: XML形式のデッド...
普段はdocker buildコマンドでイメージを生成していますが、コードの更新が頻繁に行われるとn...
JavaScriptで格納可能なセカンダリメニューを実装するための具体的なコードは参考までに。具体...
序文この記事では、MySQL 8.0 の新機能を使用して再帰クエリを実装します。詳細なサンプル コー...
input と img を同じ行に配置すると、img タグが常に input より 1 つ上になり、...
表は以下のとおりです。 Unity が読み取って呼び出すときのコード: データベース内の別のテーブル...
目次vue2のキャッシュ機能Vue キャッシュ関数の変換最適化要約するvue2のキャッシュ機能vue...
最初のもの:コードをコピーコードは次のとおりです。 <html> <ヘッド>...
目次1. フィルターの概念1. グローバルフィルターのフォーマットをカスタマイズする2. フィルター...
目次1. メール2. 携帯電話番号3. 電話番号4. URLアドレスですか? 5. 文字列ですか? ...