欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Nginx如何實現(xiàn)URL重寫規(guī)則配置-創(chuàng)新互聯(lián)

這篇文章主要介紹了Nginx如何實現(xiàn)URL重寫規(guī)則配置,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

成都創(chuàng)新互聯(lián)提供網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁設(shè)計,品牌網(wǎng)站設(shè)計,廣告投放等致力于企業(yè)網(wǎng)站建設(shè)與公司網(wǎng)站制作,十多年的網(wǎng)站開發(fā)和建站經(jīng)驗,助力企業(yè)信息化建設(shè),成功案例突破成百上千,是您實現(xiàn)網(wǎng)站建設(shè)的好選擇.

rewrite模塊介紹

nginx的重寫模塊是一個簡單的正則表達(dá)式匹配與一個虛擬堆疊機(jī)結(jié)合。依賴于PCRE庫,因此需要安裝pcre。根據(jù)相關(guān)變量重定向和選擇不同的配置,從一個location跳轉(zhuǎn)到另一個location,不過這樣的循環(huán)最多可以執(zhí)行10次,超過后nginx將返回500錯誤。同時,重寫模塊包含set指令,來創(chuàng)建新的變量并設(shè)其值,這在有些情景下非常有用的,如記錄條件標(biāo)識、傳遞參數(shù)到其他location、記錄做了什么等等。

rewrite模塊指令

break

語法:break
默認(rèn)值:none
使用字段:server, location, if

作用:完成當(dāng)前設(shè)置的重寫規(guī)則,停止執(zhí)行其他的重寫規(guī)則。

if

語法:if (condition) { … }
默認(rèn)值:none
使用字段:server, location

注意:盡量考慮使用trp_files代替。

判斷的條件可以有以下值:

一個變量的名稱:空字符傳”“或者一些“0”開始的字符串為false。
字符串比較:使用=或!=運(yùn)算符
正則表達(dá)式匹配:使用~(區(qū)分大小寫)和~(不區(qū)分大小寫),取反運(yùn)算!~ 和!~。
文件是否存在:使用-f和!-f操作符
目錄是否存在:使用-d和!-d操作符
文件、目錄、符號鏈接是否存在:使用-e和!-e操作符
文件是否可執(zhí)行:使用-x和!-x操作符

return

語法:return code
默認(rèn)值:none
使用字段:server, location, if

停止處理并為客戶端返回狀態(tài)碼。非標(biāo)準(zhǔn)的444狀態(tài)碼將關(guān)閉連接,不發(fā)送任何響應(yīng)頭??梢允褂玫臓顟B(tài)碼有:204,400,402-406,408,410, 411, 413, 416與500-504。如果狀態(tài)碼附帶文字段落,該文本將被放置在響應(yīng)主體。相反,如果狀態(tài)碼后面是一個URL,該URL將成為location頭補(bǔ)值。沒有狀態(tài)碼的URL將被視為一個302狀態(tài)碼。

rewrite

語法:rewrite regex replacement flag
默認(rèn)值:none
使用字段:server, location, if

按照相關(guān)的正則表達(dá)式與字符串修改URI,指令按照在配置文件中出現(xiàn)的順序執(zhí)行。可以在重寫指令后面添加標(biāo)記。

注意:如果替換的字符串以http://開頭,請求將被重定向,并且不再執(zhí)行多余的rewrite指令。

尾部的標(biāo)記(flag)可以是以下的值:

last – 停止處理重寫模塊指令,之后搜索location與更改后的URI匹配。
break – 完成重寫指令。
redirect – 返回302臨時重定向,如果替換字段用http://開頭則被使用。
permanent – 返回301永久重定向。

rewrite_log

語法:rewrite_log on | off
默認(rèn)值:rewrite_log off
使用字段:server, location, if
變量:無

啟用時將在error log中記錄notice級別的重寫日志。

set

語法:set variable value
默認(rèn)值:none
使用字段:server, location, if

為給定的變量設(shè)置一個特定值。

uninitialized_variable_warn

語法:uninitialized_variable_warn on|off
默認(rèn)值:uninitialized_variable_warn on
使用字段:http, server, location, if

控制是否記錄未初始化變量的警告信息。

重寫規(guī)則組成部分

第一部分–正則表達(dá)式

可以使用括號來捕獲,后續(xù)可以根據(jù)位置來將其引用,位置變量值取決于捕獲正則表達(dá)式中的順序,$1引用第一個括號中的值,$2引用第二個括號中的值,以此類推。如:

^/images/([a-z]{2})/([a-z0-9]{5})/(.*)\.(png|jpg|gif)$
# $1是兩個小寫字母組成的字符串
# $2是由小寫字母和0到9的數(shù)字組成的5個字符的字符串
# $3將是個文件名
# $4是png、jpg、gif中的其中一個。

第二部分–URI

請求被改寫。該URI可能包含正則表達(dá)式中的捕獲的位置參數(shù)或這個級別下的nginx任何配置變量。如:

/data?file=$3.$4

如果這個URI不匹配nginx配置的任何location,那么將給客戶端返回301(永久重定向)或302(臨時重定向)的狀態(tài)碼來表示重定向類型。該狀態(tài)碼可以通過第三個參數(shù)來明確指定。

第三部分–標(biāo)記

第三部分也就是尾部的標(biāo)記(flag)。 last標(biāo)記將導(dǎo)致重寫后的URI搜索匹配nginx的其他location,最多可循環(huán)10次。如:

rewrite '^/images/([a-z]{2})/([a-z0-9]{5})/(.*)\.(png|jpg|gif)$' /data?file=$3.$4 last;

break指令可以當(dāng)做自身指令。如:

if ($bwhog) {
 limit_rate 300k;
 break;
}

實例

http {
    #定義image日志格式
    log_format imagelog '[$time_local] ' $image_file ' ' $image_type ' ' $body_bytes_sent ' ' $status;
    # 開啟重寫日志
    rewrite_log on;
    server {
        root /home/www;
        location / {
            # 重寫規(guī)則信息
            error_log logs/rewrite.log notice;  
            # 注意這里要用‘’單引號引起來,避免{}
            rewrite '^/images/([a-z]{2})/([a-z0-9]{5})/(.*)\.(png|jpg|gif)$' /data?file=$3.$4;
            # 注意不能在上面這條規(guī)則后面加上“l(fā)ast”參數(shù),否則下面的set指令不會執(zhí)行
            set $image_file $3;
            set $image_type $4;
        }
        location /data {
            # 指定針對圖片的日志格式,來分析圖片類型和大小
            access_log logs/images.log mian;
            root /data/images;
            # 應(yīng)用前面定義的變量。判斷首先文件在不在,不在再判斷目錄在不在,如果還不在就跳轉(zhuǎn)到最后一個url里
            try_files /$arg_file /image404.html;
        }
        location = /image404.html {
            # 圖片不存在返回特定的信息
            return 404 "image not found\n";
        }
}

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“Nginx如何實現(xiàn)URL重寫規(guī)則配置”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

文章標(biāo)題:Nginx如何實現(xiàn)URL重寫規(guī)則配置-創(chuàng)新互聯(lián)
分享地址:http://aaarwkj.com/article12/iddgc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、ChatGPT網(wǎng)站改版、品牌網(wǎng)站建設(shè)Google、商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
国产精品一区二区激情视频| 日本熟女视频中文字幕| 国产三级在线视频不卡| 亚洲午夜黄色生活片观看| 一区二区三区深夜福利| 欧美日韩在线国产一区| 91精品国产高清一区二区性色| 日韩精品中文字幕免费人妻| 熟女人妻av五十路六十路| 偷拍一区二区三区免费| 美女丝袜诱惑国产在线观看| 日本特黄特色高清免费大片| 毛片精品一区二区二区三区| 香蕉网性欧美在线视频| 成人黄色av免费在线观看| 国产av剧情日韩精品| 伊人激情一区二区三区| 国产午夜三级视频在线观看| 国产成人原创免费观看| 成人免费大片在线观看视频| 人妻少妇中文字幕一区| 四虎免费在线高清观看| 亚洲国产欲色有一二欲色| 日本一级a级黄免视频| 天天干夜夜操操操操| 国产日韩欧美亚洲中文| 日本道视频一区二区三区| 91大神午夜在线观看| 日本成人午夜福利在线观看| 亚洲欧洲一区二区免费| 特黄日韩免费一区二区三区| 久久久久久国产精品亚洲| 欧美aⅴ精品一区二区三区| 性感美女国产精品一区二区| 国产av一区二区三区中文| 欧美激情另类综合国内| 丰满熟妇久久人妻同堂av| 色婷婷激一区二区三区| 欧美三级在线完整版免费| 不卡视频一区中文字幕| 国产精品亚洲欧美在线|