国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Nginx Rewrite詳解

這篇具有很好參考價(jià)值的文章主要介紹了Nginx Rewrite詳解。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

目錄

一、Rewrite跳轉(zhuǎn)場(chǎng)景

二、Rewrite跳轉(zhuǎn)實(shí)現(xiàn)

三、Rewrite實(shí)際場(chǎng)景

1.nginx跳轉(zhuǎn)需求的實(shí)現(xiàn)方式:

2.rewrite放在server{},if{},location{}段中

3.對(duì)域名或參數(shù)字符串

四、Rewrite正則表達(dá)式

五、Rewrite命令/語(yǔ)法格式

六、Location分類(lèi)

1. location 大致可以分為三類(lèi):

2.location 常用的匹配規(guī)則:

七、Location優(yōu)先級(jí)

八、Rewrite和Location比較

1.相同點(diǎn)

2.不同點(diǎn)

3.rewrite會(huì)寫(xiě)在location里,執(zhí)行順序

九、跳轉(zhuǎn)小案例

十、總結(jié)

1.優(yōu)先級(jí)總結(jié):

2.location 匹配?

3.rewrite和location比較

4.實(shí)際網(wǎng)站使用中,至少有三個(gè)匹配規(guī)則定義:


一、Rewrite跳轉(zhuǎn)場(chǎng)景

URL看起來(lái)更規(guī)范、合理

企業(yè)會(huì)將動(dòng)態(tài)URL地址偽裝成靜態(tài)地址提供服務(wù)

網(wǎng)址換新域名后,讓舊的訪(fǎng)問(wèn)跳轉(zhuǎn)到新的域名上

服務(wù)端某些業(yè)務(wù)調(diào)整

ps:??

URL:就是一個(gè)具體路徑/位置

URI:指的是一個(gè)擁有相同類(lèi)型/特性的對(duì)象集合

URN:用名稱(chēng)定位

二、Rewrite跳轉(zhuǎn)實(shí)現(xiàn)

通過(guò)ngx_http_rewrite_module這個(gè)模塊來(lái)實(shí)現(xiàn),而這個(gè)模塊內(nèi)有四部分來(lái)組成:

Nignx:支持URL重寫(xiě)、支持if條件判斷,但不支持else

跳轉(zhuǎn):循環(huán)最多可以執(zhí)行10次,超過(guò)后nginx將返回500錯(cuò)誤

PCRE支持:rewrite使用nginx全局變量或自己設(shè)置的變量,結(jié)合正則表達(dá)式和標(biāo)志位實(shí)現(xiàn)URL重寫(xiě)以及重定向

重寫(xiě) 模塊:set指令

三、Rewrite實(shí)際場(chǎng)景

1.nginx跳轉(zhuǎn)需求的實(shí)現(xiàn)方式:

使用rewrite進(jìn)行匹配跳轉(zhuǎn)

使用if匹配全局變量后跳轉(zhuǎn)

使用location匹配再跳轉(zhuǎn)

2.rewrite放在server{},if{},location{}段中

location只對(duì)域名后面的出去傳遞參數(shù)外的字符串起作用

3.對(duì)域名或參數(shù)字符串

使用if全局變量匹配

使用proxy_pass反向代理

四、Rewrite正則表達(dá)式

字符 說(shuō)明
^ 匹配輸入字符串的起始位置
& 匹配輸入字符串的結(jié)束位置
* 匹配前面的字符零次或多次
+ 匹配前面的字符一次或多次
? 匹配前面的字符零次或一次
. 匹配除“\n”之外的任何單個(gè)字符
\ 將后面接著的字符標(biāo)記為一個(gè)特殊字符或一個(gè)原義字符或一個(gè)向后引用
\d 匹配純數(shù)字
{n}? 重復(fù) n 次
{n,}? 重復(fù) n 次或更多次
{n,m}? 重復(fù) n 到 m 次
[ ] 定義匹配的字符范圍
[c]

匹配單個(gè)字符 c

[a-z] 匹配 a-z 小寫(xiě)字母的任意一個(gè)
[a-zA-Z0-9] 匹配所有大小寫(xiě)字母或數(shù)字
( ) 表達(dá)式的開(kāi)始和結(jié)束位置
| 或運(yùn)算符

五、Rewrite命令/語(yǔ)法格式

nginx rewrite,nginx,服務(wù)器,mysql?

?flag標(biāo)記說(shuō)明

標(biāo)記 說(shuō)明
last 相當(dāng)于Apache的[L]標(biāo)記,表示完成rewrite
break 本條規(guī)則匹配完成即終止,不再匹配后面的任何規(guī)則
redirect 返回302臨時(shí)重定向,瀏覽器地址會(huì)顯示跳轉(zhuǎn)后的URL地址,爬蟲(chóng)不會(huì)更新URL
permanent 返回301永久重定向,瀏覽器地址會(huì)顯示跳轉(zhuǎn)后的URL地址,爬蟲(chóng)更新URL

last :在本條規(guī)則完成后,繼續(xù)向下匹配新的location URL規(guī)則,一般用在server和if當(dāng)中

break :和last類(lèi)似,但是不會(huì)重新發(fā)起一次處理過(guò)程,而是直接返回處理結(jié)果,一般用在location當(dāng)中

redirect :該標(biāo)記表示當(dāng)前規(guī)則匹配成功后立即進(jìn)行重定向操作(臨時(shí))

permanent :該標(biāo)記和redirect類(lèi)似,永久性重定向

set :表示當(dāng)前規(guī)則匹配成功后設(shè)置一個(gè)變量,并把變量傳入下一條規(guī)則

六、Location分類(lèi)

1. location 大致可以分為三類(lèi):

精準(zhǔn)匹配:location = / {...}
一般匹配:location / {...}?
正則匹配:location ~ / {...}

2.location 常用的匹配規(guī)則:

標(biāo)記 說(shuō)明
= 進(jìn)行普通字符精確匹配,也就是完全匹配
^~ 表示普通字符匹配,使用前綴匹配
~ 區(qū)分大小寫(xiě)的匹配
~* 不區(qū)分大小寫(xiě)的匹配
!~ 區(qū)分大小寫(xiě)的匹配取非
!~* 不區(qū)分大小寫(xiě)的匹配取非
@ 定義一個(gè)命名的location,使用在內(nèi)部定向時(shí)

七、Location優(yōu)先級(jí)

首先精確匹配 =
其次前綴匹配 ^~
其次是按文件中順序的正則匹配 ~或~*
然后匹配不帶任何修飾的前綴匹配
最后是交給 / 通用匹配
? ??

八、Rewrite和Location比較

1.相同點(diǎn)

都能實(shí)現(xiàn)跳轉(zhuǎn)

2.不同點(diǎn)

rewrite是在同一域名內(nèi)更改獲取資源的路徑

location是對(duì)一類(lèi)路徑做控制訪(fǎng)問(wèn)或反向代理,還可以proxy_pass到其他機(jī)器

3.rewrite會(huì)寫(xiě)在location里,執(zhí)行順序

執(zhí)行server塊里面的rewrite指令

執(zhí)行l(wèi)ocation匹配

執(zhí)行選定的location中的rewrite指令

九、跳轉(zhuǎn)小案例

基于域名的跳轉(zhuǎn):

#修改配置文件

nginx rewrite,nginx,服務(wù)器,mysql

nginx rewrite,nginx,服務(wù)器,mysql

重啟服務(wù)

nginx rewrite,nginx,服務(wù)器,mysql

瀏覽器模擬訪(fǎng)問(wèn)www.kgc.com會(huì)跳轉(zhuǎn)到www.benet.com

nginx rewrite,nginx,服務(wù)器,mysql

模擬訪(fǎng)問(wèn)www.kgc.com/test會(huì)跳轉(zhuǎn)到www.benet.com/test,查看元素可以看到返回301,實(shí)現(xiàn)了永久重定向跳轉(zhuǎn),而且域名后的參數(shù)也正常跳轉(zhuǎn)。

nginx rewrite,nginx,服務(wù)器,mysql

十、總結(jié)

1.優(yōu)先級(jí)總結(jié):

(location = 完整路徑) > (location ^~ 路徑) > (location ~,~* 正則順序) > (location 部分起始路徑) > (location /)

2.location 匹配?

首先看 優(yōu)先級(jí):精確>前綴>正則>一般>通用
優(yōu)先級(jí)相同:正則看上下順序,上面的優(yōu)先;一般匹配看長(zhǎng)度,最長(zhǎng)匹配的優(yōu)先
精確、前綴、正則、一般 都沒(méi)有匹配到,最后再看通用匹配 ?一般匹配

3.rewrite和location比較

rewrite:改寫(xiě)訪(fǎng)問(wèn)的URL路徑 ?(被訪(fǎng)問(wèn)的HTML/HTM/CSS文件)

location:對(duì)一類(lèi)地址進(jìn)行權(quán)限控制(認(rèn)證控制)+ 跳轉(zhuǎn)(跨服務(wù)器進(jìn)行URL跳轉(zhuǎn))

4.實(shí)際網(wǎng)站使用中,至少有三個(gè)匹配規(guī)則定義:

第一個(gè)必選規(guī)則

直接匹配網(wǎng)站根,通過(guò)域名訪(fǎng)問(wèn)網(wǎng)站首頁(yè)比較頻繁,使用這個(gè)會(huì)加速處理,比如說(shuō)官網(wǎng)??梢允且粋€(gè)靜態(tài)首頁(yè),也可以直接轉(zhuǎn)發(fā)給后端應(yīng)用服務(wù)器

第二個(gè)必選規(guī)則

處理靜態(tài)文件請(qǐng)求,這是nginx作為http服務(wù)器的強(qiáng)項(xiàng)有兩種配置模式,目錄匹配或后綴匹配,任選其一或搭配使用

第三個(gè)規(guī)則

通用規(guī)則,比如用來(lái)轉(zhuǎn)發(fā)帶.php、.jsp后綴的動(dòng)態(tài)請(qǐng)求到后端應(yīng)用服務(wù)器非靜態(tài)文件請(qǐng)求就默認(rèn)是動(dòng)態(tài)請(qǐng)求文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-728248.html

到了這里,關(guān)于Nginx Rewrite詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀(guān)點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Nginx快速入門(mén):return、rewrite重定向、重寫(xiě)詳解(六)

    Nginx快速入門(mén):return、rewrite重定向、重寫(xiě)詳解(六)

    我們?cè)谌粘5纳a(chǎn)過(guò)程中,常常有需要重定向轉(zhuǎn)發(fā)的需求,比如企業(yè)更換了域名,但又要保證之前的域名能訪(fǎng)問(wèn),這就需要做重定向的跳轉(zhuǎn)。 我們?cè)谥暗恼鹿?jié)中學(xué)習(xí)了Nginx的負(fù)載均衡、各類(lèi)轉(zhuǎn)發(fā)代理配置,今天繼續(xù)來(lái)補(bǔ)充關(guān)于轉(zhuǎn)發(fā)的的最后一個(gè)環(huán)節(jié)——重定向(或稱(chēng)跳轉(zhuǎn))

    2024年02月20日
    瀏覽(16)
  • nginx rewrite 用法,用rewrite去除URL中的特定參數(shù)

    日常服務(wù)中經(jīng)常會(huì)用Nginx做一層代理轉(zhuǎn)發(fā),把Nginx當(dāng)做前置機(jī) 比如,以下配置: 這里的rewrite 就是為了去除URL中的/apis,實(shí)際的后端api中是沒(méi)有這個(gè)參數(shù)的,但是為了做到在Nginx轉(zhuǎn)發(fā)請(qǐng)求,前端需要加上這個(gè)參數(shù),以便于區(qū)別 比如前端的請(qǐng)求地址是 那么實(shí)際上經(jīng)過(guò)Nginx轉(zhuǎn)發(fā)后請(qǐng)求

    2024年02月05日
    瀏覽(21)
  • 8.Nginx Rewrite

    8.Nginx Rewrite

    從功能看rewrite和location似乎有點(diǎn)像,都能實(shí)現(xiàn)跳轉(zhuǎn)。 主要區(qū)別在于rewrite是在同一域名內(nèi)更改獲取資源的路徑,而location是對(duì)一類(lèi)路徑做控制訪(fǎng)問(wèn)或反向代理,還可以proxy_pass到其他機(jī)器 rewrite對(duì)訪(fǎng)問(wèn)的域名或者域名內(nèi)的URL路徑地址重寫(xiě) location對(duì)訪(fǎng)問(wèn)的路徑做訪(fǎng)問(wèn)控制或者代理轉(zhuǎn)

    2024年02月08日
    瀏覽(16)
  • Nginx重寫(xiě)功能rewrite

    目錄 一、Rewrite簡(jiǎn)單介紹 1、Rewrite的概述 2、Rewrite跳轉(zhuǎn)場(chǎng)景 3、URI、URL、URN 4、Rewrite跳轉(zhuǎn)實(shí)現(xiàn) 5、Rewrite實(shí)際場(chǎng)景? 6、Nginx正則表達(dá)式 7、Rewrite執(zhí)行順序 二、location簡(jiǎn)單介紹 1、location的分類(lèi) 2、location 常用的匹配規(guī)則 3、location的優(yōu)先級(jí) 4、location示例說(shuō)明 5、實(shí)際網(wǎng)站使用中,至

    2024年02月08日
    瀏覽(17)
  • nginx rewrite(重定向)

    nginx rewrite(重定向)

    目錄 一、什么是rewrite 二、rewrite使用場(chǎng)景 三、rewrite配置語(yǔ)法 四、常用的nginx正則表達(dá)式 五、nginx 配置文件里 location 項(xiàng) 1、localtion 作用 2、location 可以分為三類(lèi) 3、location 的常用匹配規(guī)則 4、location 的 優(yōu)先級(jí)與匹配規(guī)則 5、location 示例說(shuō)明 六、案例 七、rewrite總結(jié) ? ? ? ?R

    2024年02月11日
    瀏覽(19)
  • Nginx Rewrite的應(yīng)用

    目錄 一、Nginx Rewrite 二、Rewrite的功能? 1.Rewrite? 跳轉(zhuǎn)場(chǎng)景 2.Rewrite? 跳轉(zhuǎn)實(shí)現(xiàn) 3.Rewrite? 實(shí)際場(chǎng)景 4.Rewrite? 正則表達(dá)式 5.Rewrite? 命令/語(yǔ)法格式 6.location? 分類(lèi) 7.location? 優(yōu)先級(jí) 8.Rewrite和location比較 9.根據(jù)以上了解,小案例來(lái)操作實(shí)現(xiàn)我們?cè)谄髽I(yè)跳轉(zhuǎn)案例 三、Rewrite? 跳轉(zhuǎn)場(chǎng)景

    2024年02月12日
    瀏覽(21)
  • 【Nginx】rewrite簡(jiǎn)單使用

    【Nginx】rewrite簡(jiǎn)單使用

    沒(méi)有對(duì)正式的rewrite進(jìn)行了解,為了能快速了解它是干嘛怎么用,找了一些有例子的博客進(jìn)行簡(jiǎn)單學(xué)習(xí)了一下;由于每次看的間隔有點(diǎn)大,老忘記,這回專(zhuān)門(mén)寫(xiě)個(gè)超級(jí)快速理解的例子。 PS:下面的解釋可能會(huì)不太對(duì),大佬們可以分享一下正確說(shuō)法;如果用法都有錯(cuò)了,請(qǐng)諸位指

    2024年02月15日
    瀏覽(17)
  • Nginx rewrite

    Nginx rewrite

    目錄 一、location 1.location 匹配規(guī)則介紹 2.?實(shí)際網(wǎng)站使用中匹配規(guī)則 2.1第一個(gè)必選規(guī)則 2.2第二個(gè)必選規(guī)則是處理靜態(tài)文件請(qǐng)求,這是nginx作為http服務(wù)器的強(qiáng)項(xiàng) 2.3第三個(gè)規(guī)則就是通用規(guī)則 3.location 匹配規(guī)則演示 2.1一般前綴匹配 2.2正則匹配 2.3正則前綴匹配 2.4精準(zhǔn)匹配 二、re

    2024年02月07日
    瀏覽(19)
  • Nginx Rewrite(重寫(xiě)跳轉(zhuǎn))

    Nginx Rewrite(重寫(xiě)跳轉(zhuǎn))

    rewrite功能: 使用nginx提供的全局變量或自己設(shè)置的變量,結(jié)合正則表達(dá)式和標(biāo)記位實(shí)現(xiàn)URL重寫(xiě)以及重定向。 比如: 更換域名后需要保持舊的域名能跳轉(zhuǎn)到新的域名上、某網(wǎng)頁(yè)發(fā)生改變需要跳轉(zhuǎn)到新的頁(yè)面、網(wǎng)站防盜鏈等等需求。 rewrite只能放在server{},location{},if{}中,并且默

    2024年02月03日
    瀏覽(17)
  • Nginx Rewrite 重寫(xiě)跳轉(zhuǎn)

    Nginx Rewrite 重寫(xiě)跳轉(zhuǎn)

    rewrite功能: 使用nginx提供的全局變量或自己設(shè)置的變量,結(jié)合正則表達(dá)式和標(biāo)記位實(shí)現(xiàn)URL重寫(xiě)以及重定向。 比如: 更換域名后需要保持舊的域名能跳轉(zhuǎn)到新的域名上、某網(wǎng)頁(yè)發(fā)生改變需要跳轉(zhuǎn)到新的頁(yè)面、網(wǎng)站防盜鏈等等需求。 rewrite只能放在server{},location{},if{}中,并且默

    2024年02月11日
    瀏覽(12)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包