Nginx rewrite配置規則
2119 ワード
rewrite文法 last:Apphe里徳(L)のタグに相当し、rewriteが完了したことを示し、ブラウザアドレスバーのURLアドレスが不変であることを示す break;このルールのマッチングが完了したら、マッチングを終了し、後のルールに一致しなくなります。ブラウザアドレスバーのURLアドレスは不変です。 redirect:302に戻ると、一時的にリダイレクトされ、ブラウザアドレスは、ジャンプ後のURLアドレス を表示します。 permant:301を返して恒久的にリダイレクトします。ブラウザアドレスバーにはジャンプ後のURLアドレス が表示されます。
例をあげて説明するは、301と302が単に状態コードだけを返すことができないため、リダイレクトされたURLも必要である。これは、return命令が301,302に戻らないためである。 lastは普通serverとifに書いていますが、breakは普通locationで を使います。 lastは書き換え後のurlマッチングを終了しません。つまり、新しいurlはserverからマッチングフローをもう一度歩きます。breakは書き直した後のマッチング と一致します。 breakとlastは、後続のrewrite命令 を実行し続けることができます。 locationでbreakに戻ると、その後のマッチングlocation が直接に有効になり、停止される。
「Kおじさんブロックチェーン」を購読してください。ブロックチェーン技術の勉強に専念します。
ブログのアドレス:http://www.jouypub.com
略書ホームページ:https://www.jianshu.com/u/756c9c8ae984
segmentfaultホームページ:https://segmentfault.com/blog/jouypub
騰訊雲ホームページ:https://cloud.tencent.com/developer/column/72548
server {
rewrite { } { } { } ;
}
1、ルール:マッチングしたいターゲットurl 2、指向性パスを文字列または正規表現することができます。ルールにマッチした後に方向性を決めるパスを表します。ルールに正則がある場合、正規のTrapパケット3、書き換えタイプは$indexを使用して表されます。例をあげて説明する
server {
rewrite /last.html /index.html last;
# /last.html , /index.html
rewrite /break.html /index.html break;
# /break.html , /index.html ,
rewrite /redirect.html /index.html redirect;
# /redirect.html , 302 /index.html
rewrite /permanent.html /index.html permanent;
# /permanent.html , 301 /index.html
rewrite ^/html/(.+?).html$ /post/$1.html permanent;
# /html/*.html => /post/*.html ,301
rewrite ^/search\/([^\/]+?)(\/|$) /search.html?keyword=$1 permanent;
# /search/key => /search.html?keyword=key
}
lastとbreakの違い:server {
location / {
rewrite /last/ /q.html last;
rewrite /break/ /q.html break;
}
location = /q.html {
return 400;
}
}
アクセス/last/時重は/q.htmlを書いて、新しいuriを使ってまたマッチングして、ちょうどlocaton=/q.と合致して、400に戻りました。訪問/break時に書き直します。breakに戻りましたので、直接停止しました。「Kおじさんブロックチェーン」を購読してください。ブロックチェーン技術の勉強に専念します。
ブログのアドレス:http://www.jouypub.com
略書ホームページ:https://www.jianshu.com/u/756c9c8ae984
segmentfaultホームページ:https://segmentfault.com/blog/jouypub
騰訊雲ホームページ:https://cloud.tencent.com/developer/column/72548