Nginx——Rewrite用法詳細
1424 ワード
目次
1、Rewriteの定義
2、シーンを適用する
3、Rewirteの文法
4、正規表現
5、例
1、Rewriteの定義
rewrite機能はnginxが提供するグローバル変数または自分で設定した変数を使用して、正規表現とフラグビットを組み合わせてurlの書き換えとリダイレクトを実現します.
rewriteはserver{},location{},if{}にのみ配置でき,ドメイン名の後ろに渡されたパラメータを除く文字列にのみ機能する.たとえばhttp://seanlook.com/a/we/index.php?id=1&u=str/a/we/index.phpのみ書き換えます.
2、シーンを適用する ユーザが閲覧するURLを調整し、仕様 に見えるようにする.検索エンジンにウェブサイトの内容を収録させるために、ユーザーにより良い体験をさせる Webサイトが新しいドメイン名を変更した後 特殊な変数、ディレクトリ、クライアント情報に基づいてジャンプ を行う.
3、Rewirteの文法
rewrite regex replacement [flag];
flagタグの説明:
last #このルールの照合が完了したら、新しいlocation URIルールを下に照合し続けます.
break #この規則の一致が完了すると終了し、後の規則に一致しません.
redirect #戻る302一時リダイレクト、ブラウザアドレスにジャンプ後のURLアドレスが表示されます
permanent #301の永続リダイレクトを返します.ブラウザのアドレスバーには、ジャンプ後のURLアドレスが表示されます.
4、正規表現
正則
説明
正則
説明
^
一致文字列の開始
(pattern)
(pattern)間で一致する内容は、後に$1で参照でき、$2は前の2番目の()の内容を表す
5、例
server {
listen 80;
server_name www.mfc.com;
rewrite ^/api/(.*) http://www.test.com/$1 permanent;
)アクセスアドレス:www.mfc.com/api/login URLは、www.test.com/login と書き換えられます.
1、Rewriteの定義
2、シーンを適用する
3、Rewirteの文法
4、正規表現
5、例
1、Rewriteの定義
rewrite機能はnginxが提供するグローバル変数または自分で設定した変数を使用して、正規表現とフラグビットを組み合わせてurlの書き換えとリダイレクトを実現します.
rewriteはserver{},location{},if{}にのみ配置でき,ドメイン名の後ろに渡されたパラメータを除く文字列にのみ機能する.たとえばhttp://seanlook.com/a/we/index.php?id=1&u=str/a/we/index.phpのみ書き換えます.
2、シーンを適用する
3、Rewirteの文法
rewrite regex replacement [flag];
flagタグの説明:
last #このルールの照合が完了したら、新しいlocation URIルールを下に照合し続けます.
break #この規則の一致が完了すると終了し、後の規則に一致しません.
redirect #戻る302一時リダイレクト、ブラウザアドレスにジャンプ後のURLアドレスが表示されます
permanent #301の永続リダイレクトを返します.ブラウザのアドレスバーには、ジャンプ後のURLアドレスが表示されます.
4、正規表現
正則
説明
正則
説明
.
改行以外の任意の文字を一致させる$
一致文字列の終了?
0回または1回繰り返す{n}
n回繰り返す+
1回以上繰り返す{n,}
n回以上繰り返す*
0回以上繰り返し[c]
単一文字cに一致\d
一致する数値[a-z]
a-z小文字のいずれかに一致^
一致文字列の開始
(pattern)
(pattern)間で一致する内容は、後に$1で参照でき、$2は前の2番目の()の内容を表す
5、例
server {
listen 80;
server_name www.mfc.com;
rewrite ^/api/(.*) http://www.test.com/$1 permanent;
)