成人怡红院-成人怡红院视频在线观看-成人影视大全-成人影院203nnxyz-美女毛片在线看-美女免费黄

站長資訊網
最全最豐富的資訊網站

Nginx Location和Rewrite深入剖析

Nginx Location

Nginx由內核和模塊組成,其中內核的設計非常微小和簡潔,完成的工作也非常簡單,僅僅通過查找配置文件將客戶端的請求映射到一個location block,而location是Nginx配置中的一個指令,用于訪問的URL匹配,而在這個location中所配置的每個指令將會啟動不同的模塊去完成相應的工作。

  • location功能是由ngx_http_index_module模塊提供的。
  • location常放在server上下文。
  • location匹配與location的放置順序無關,而是與location匹配規則的優先級有關。

常見的location匹配的URL方式如下:

符號 解釋
= 字面精確匹配,精確到文件
^~ URL的前綴匹配,不支持正則
~ 正則匹配檢查,區分大小寫
~* 正則匹配檢查,不區分大小寫
/ 不帶任何前綴

location匹配優先級如下:

(location =) > (location 完整路徑)> (location ^~) > (location ~) > (location ~*) > ( location部分起始路徑) > (location / )

Nginx Location規則案例:

1.只會匹配/,優先級比location / 低,= file 匹配到file的優先級最高。

location =/ {  [ configuration L1  ]  }

2.直接匹配到到file,優先級最高。

location =/index.html {  [ configuration L2  ]  }

3.可以匹配任何請求,但是因為從 / 開始匹配,所有優先級最低。

location / {  [ configuration L3  ]  }

4.匹配任何以/p_w_picpaths/開始的請求,并且停止匹配其他的loation;

location = /p_w_picpaths/ {  [ configuration L4 ]  }

5.匹配以html、txt、gif、jpg、jpeg結尾的URL文件請求, 但是所有/p_w_picpaths/目錄的請求將由 [Configuration L4]處理。

location ~* .(html|txt|gif|jpg|jpeg)$ {    [ configuration L5]  }

瀏覽器發起HTTP Request URI案例與Location規則案例匹配如下:

/ -> 匹配configuration L3; /index.html 匹配configuration L2;  /p_w_picpaths/ 匹配configuration L4; /p_w_picpaths/logo.png 匹配configuration L4; /img/test.jpg 匹配configuration L5。

生產環境中無需在Nginx.conf配置文件中同時添加五種規則匹配,如下為企業生產環境Nginx Location部分配置代碼:

#匹配/,優先級最低
location /
{
    root /var/www/html/;
 expires      60d;
}
#匹配靜態頁面,由本地解析
location ~ .*.(gif|jpg|jpeg|bmp|png|ico|txt|js|css)$
{
 root /var/www/html/; 
 expires      60d;     
}
#匹配動態頁面,交給后端服務器
location ~ .*.(jsp|php|cgi|do)$
{
    root /var/www/html/;
    proxy_pass http://linux_web;
    proxy_http_version 1.1;
    proxy_set_header Connection “”;
    proxy_set_header Host  $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;   
}
#直接匹配newindex.html,優先級最高
location =/newindex.html
{
    root /var/www/newwww/;
 expires      60d;
}

Nginx Rewrite

Rewirte規則也稱為規則重寫,主要功能是實現瀏覽器訪問HTTP URL的跳轉,其正則表達式是基于Perl語言。通常而言,幾乎所有的WEB服務器均可以支持URL重寫。

Rewrite URL規則重寫的用途:

  • 對搜索引擎優化(Search Engine Optimization,SEO)友好,利于搜索引擎抓取網站頁面;
  • 隱藏網站URL真實地址,瀏覽器顯示更加美觀;
  • 網站變更升級,可以基于Rewrite臨時重定向到其他頁面。
  • Nginx Rewrite是由ngx_http_rewrite_module模塊提供;
  • Nginx Rewrite可以使用正則替換URL,返回重定向頁面。
  • Nginx Rewrite是按順序進行匹配的。
  • Nginx Rewrite放在server,location,if上下文。

Nginx Rewrite規則使用中有三個概念需要理解,分別是:Rewrite結尾標識符、Rewrite規則常用表達式、Nginx Rewrite變量,如下為三個概念的詳解:

Rewrite結尾標識符:由于Rewrite規則末尾,表示規則的執行屬性。

1.last :相當于Apache里的(L)標記,表示完成rewrite匹配,匹配完成后還會向下繼續匹配。

2.break:本條規則匹配完成后,終止匹配,不再匹配后面的規則.

3.redirect:返回302臨時重定向,瀏覽器地址會顯示跳轉后的URL地址。

4.permanent:返回301永久重定向,瀏覽器地址欄會顯示跳轉后的URL地址。

其中last和break用來實現URL重寫時,瀏覽器地址欄URL地址不變。

Rewrite規則常用表達式:要用于匹配參數、字符串及過濾設置。

符號 意義
. 匹配任何單個字符
[word] 匹配字符串word
[^word] 不匹配字符串word
aa|bb 可選擇字符串aa|bb
? 匹配0到1個字符
* 匹配0到多個字符
+ 匹配1到多個字符
^ 字符串開始標志
$ 字符串結尾標志
n 轉義字符

Rewrite變量:常用于匹配HTTP請求頭信息、瀏覽器主機名、URL等。

HTTP headers:HTTP_USER_AGENT, HTTP_REFERER, HTTP_COOKIE, HTTP_HOST, HTTP_ACCEPT;
connection & request: REMOTE_ADDR, QUERY_STRING;
server internals: DOCUMENT_ROOT, SERVER_PORT, SERVER_PROTOCOL;
system stuff: TIME_YEAR, TIME_MON, TIME_DAY。

詳解如下:
HTTP_USER_AGENT  用戶使用的代理,例如瀏覽器;
HTTP_REFERER 告知服務器,從哪個頁面來訪問的;
HTTP_COOKIE            客戶端緩存,主要用于存儲用戶名和密碼等信息;
HTTP_HOST 匹配服務器ServerName域名;
HTTP_ACCEPT 客戶端的瀏覽器支持的MIME類型;
REMOTE_ADDR 客戶端的IP地址
QUERY_STRING URL中訪問的字符串;
DOCUMENT_ROOT        服務器發布目錄;
SERVER_PORT 服務器端口;
SERVER_PROTOCOL 服務器端協議;
TIME_YEAR 年;
TIME_MON 月;
TIME_DAY 日;

補充: if指令:

語法: if (condition) { … } 默認值: — 上下文: server, location

計算指定condition的值。計算指定的condition的值。如果為真,執行定義在大括號中的rewrite模塊指令,并將if指令中的配置指定給請求。if指令會從上一層配置中繼承配置。

condition為下:

條件 解釋
變量名 如何變量值為空或者以0開始的字符串,則為假
= 運算符等于,則為真
!= 運算符不等于,則為真
~ 大小寫敏感,匹配變量和正則
~* 大小寫不敏感,匹配變量和正則
-f | !-f 檢查文件是否存在
-d | !-d 檢查目錄是否存在
-e | !-e 檢查文件,目錄或符號鏈接是否存在
-x | !-x 檢查是否是可執行文件

Nginx Rewrite案例

1.將www.abc1.com 跳轉到 www.abc2.com

if ( $host = ‘www.abc1.com’ ){    rewrite ^/(.*)$ http://www.abc2.com/$1 permanent;  }

2.訪問www.abc1.com跳轉www.abc1.com/newindex.html

rewrite ^/$ http://www.abc1.com/newindex.html permanent;

3.訪問/test/跳轉到www.abc1.com/newindex.html

rewrite ^/test/$ http://www.abc1.com/newindex.html permanent;

4.多域名跳轉到 www.abc1.com

if ( $host != ‘www.abc1.com’ ) {  rewrite ^/(.*)$  http://www.abc1.com/$1  permanent;  }

5.訪問文件和目錄不存在跳轉至index.html。

if ( !-e $request_filename )  {  rewrite  ^/(.*)$  /index.html  last;  }

6.目錄對換 /xxxx/123456 ====> /xxxx?id=123456

rewrite ^/(.+)/(d+)  /$1?id=$2 last;

7.判斷瀏覽器User Agent跳轉。

if( $http_user_agent  ~ MSIE) { rewrite ^(.*)$ /ie/$1 break; }

8.禁止訪問以.sh,.flv,.mp3為文件后綴名的文件。

location ~ .*.(sh|flv|mp3)$  {  return 403;  }

9.將移動用戶訪問跳轉至移動端。

if ( $http_user_agent ~* “(Android)|(iPhone)|(Mobile)|(WAP)|(UCWEB)” )  {  rewrite ^/$      http://m.linuxidc.net/      permanent;  }

10.匹配URL訪任意字符串后面含有?tid=13就跳轉,$args 表示任意字符串

if ( $args ~* tid=13 ){  return 404; }

11.訪問/10690/jj/123跳轉至/index.php?tid/10690/items=123,[0-9]表示任意一個數字,+表示多個,(.+)表示任何多個字符。

rewrite  ^/([0-9]+)/jj/(.+)$    /index.php?tid/$1/items=$2    permanent;

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
又粗又大又硬又爽的少妇毛片| 在熟睡夫面前侵犯我在线播放 | 精品成人AV一区二区三区 | 国产精品国产三级国产AV′| 97亚洲狠狠色综合久久| 亚洲日韩中文字幕无码专区| 天天摸夜夜添夜夜无码| 欧美日韩久久中文字幕| 久久综合九色综合97欧美| 国产乱理伦片A级在线观看| 成人午夜福利电影天堂| AV一区二区三区人妻少妇| 影音先锋最新AV资源网站| 亚洲欧美xxxx| 亚洲AV无码国产精品色| 无码精品人妻一区二区三区ap| 日本做受高潮好舒服视频| 欧美乱妇高清无乱码| 男女无遮挡XX00动态图1| 麻豆传播媒体APP大全免费版| 精品欧美成人高清在线观看| 国产特级毛片AAAAAA视频| 国产成人猛男69精品视频| 成人区人妻精品一区二区不卡| 国产成人影院一区二区三区| 国产97色在线 | 亚洲| 大BBW大BBW超大BBW| 差差差很疼30分钟视频| 啊别插了视频髙清在线观看| FREEZEFRAME丰满人妻| AⅤ成年女人毛片免费观看| 55大东北熟女啪啪嗷嗷叫| 制服 丝袜 人妻 专区一本| 又湿又紧又大又爽A视频国产| XXXXXL日本17上线| 部长的夫人的味道HD| 草草久久久无码国产专区| 国产毛片一区二区精品| 国产婷婷色综合AV蜜臀AV| 久久久久久精品久久久| 老乞丐没完没了73节| 两人做人爱视频在线观看| 日本午夜免费福利视频| 性无码专区一色吊丝中文字幕| 亚洲AⅤ日韩久久久久久| 亚洲AV成人片色在线高潮| 在线观看内射亲妹妹无套内射| 大白肥妇BBVBBW高潮| 护士长在办公室躁BD| 久久国产精品99精品国产| 久久久久久精品免费看SSS| 人妻熟妇乱又伦精品无码专区| 日本猛少妇色XXXXX猛叫小说| 日本熟熟妇XXXXX精品熟妇| 亚洲AV无码专区国产乱码DVD| 亚洲乱色熟女一区二区三区丝袜| JAPAN高清日本乱XXXXX| 国内精品久久久久精免费| 精品无人区卡卡卡卡卡二卡三乱码 | 国产精品久久久久精品日日 | 久久久久人妻精品一区三寸| 美女脱个精光扒开尿口图片无遮挡| 噜噜噜亚洲色成人网站∨| 色欲AV自慰一区二区三区| 雯雅婷在工地被民工玩| 亚洲AV中文无码乱人伦APP| 亚洲无人区码卡二卡三卡四卡| 自拍亚洲欧美在线成电影| 波多野结衣AV大全| 久久不见久久见免费影院国语| 色噜噜天堂AV崩坏星穹铁道| 天堂久久久久VA久久久久 | 久久久久精品国产亚洲AV| 色综合天天天天综合狠狠爱| 中文无码人妻有码人妻中文字幕| ZOOM与人性ZOOM2区别| 激情内射亚洲一区二区三区| 色狠狠久久AV五月综合| 在线人成视频播放午夜福利| 国产亚洲美女精品久久久久| 久久人人爽人人爽人人片AV超碰| 免费少妇A级毛片| 色噜噜亚洲精品中文字幕| 中国女人内射6XXXXXWWW| 国农村精品国产自线拍| 乱中年女人伦AV二区| 亚洲A∨国产AV综合AV麻豆丫| 成人性生交大片免费看中文| 免费AV片大尺度在线观看| 亚洲AV无码乱码在线观看牲色 | 日韩VS欧美VS亚洲VS无码| 小怡的暴露耻辱系列小说| 野花影视在线观看免费高清完整版 | 色欲人妻AAAAAAA无码| 99无人区码一码二码三码...| 精品成人AV一区二区三区| 天美传媒自制剧免费观看| 亚洲人成网站18禁止| BDSM女囚BDSMTV| 国产精品一区在线观看你懂的| 人妻丰满熟妇av无码区乱| 亚洲AV无码专区国产乱码软件 | 92成人午夜福利一区二区| 国产97在线 | 欧美| 欧洲免费无线码在线一区| 亚洲AV成人WWW永久无码精品| 成熟老太毛茸茸BBWBBW| 久久精品国产99久久久香蕉| 日本适合十八岁以上的护肤品一| 在线 | 一区二区三区| 久久99精品久久久久久HB| 性做久久久久久免费观看| 国产精品久久香蕉免费播放 | 美女裸体无遮拦国产兔费网站 | 我国产码在线观看AV哈哈哈网站| 超薄丝袜足J好爽在线观看| 欧美综合自拍亚洲综合图片区| 亚洲AV成人男人的天堂手机| 国产爆乳无码福利电影| 蜜桃国产乱码精品一区二区三区w| 亚洲乱码AV一区二区| 黑人粗大与亚裔乱P视频| 人人妻人人澡人人爽人人精品图片 | 成人国成人国产SUV| 久久久久久伊人高潮影院| 亚洲国产日韩欧美高清片| 成人精品一区二区久久久| 欧美精品成人A在线观看| 亚洲欧洲日产国码无码AV一| 黑人巨茎大战白人女40CM| 日本少妇人妻XXXXⅩ18| YY6080久久亚洲精品| 女人毛毛扒开自慰| 亚洲精品中文字幕无码蜜桃| 国偷自产AⅤ一区二区三区| 亚洲AV成人精品一区二区三区 | 久久夜色精品国产噜噜亚洲SV| 无码成人亚洲AV污污污在线看| 国产69精品久久久久久人妻精品| 天海翼一区二区三区高清在线| 风流老熟女一区二区三区| 精品无人区卡卡卡卡卡二卡三乱码| 亚洲AV永久无码精品无码电影| 国内精品久久久久久久97牛牛| 亚洲成a人蜜臀AV在线播放| 成人免费无遮挡无码黄漫视频 | 99久久国产综合精麻豆| 欧美VPSWINDOWS另类| 亚洲国产成人久久综合碰| 短裙公车被直接进入| 欧美VA久久久噜噜噜久久| 亚洲日本VA一区二区三区| 久久天堂AV综合合色蜜桃网| 伊人精品无码一区二区三区电影| 久久精品亚洲中文无东京热| 小妖精抬起臀嗯啊H军人| 国产又粗又黄又爽的大片| 色欲AV无码一区二区三区| 国产精品福利自产拍在线观看| 性饥渴少妇AV无码毛片| 精品久久久久成人码免费动漫| 亚洲熟妇色XXXXX亚洲| 好男人网官网在线观看2019| 亚洲欧美日韩综合一区| 林静公交车被做到高C| www.XXXXx.com日本| 欧美成人AA久久狼窝五月丁香| ZPS无套内射视频免费播放| 日韩精品无码人成视频| 国产麻豆剧传媒精品国产AV蜜桃| 亚洲精品自在在线观看| 内射少妇骚B一√| 中文字幕乱码人在线视频1区 | 国产98色在线 | 日韩| 亚洲AV中文无码字幕色三| 久久久久亚洲AV无码专区首页网| 97久久精品亚洲中文字幕无码 | 大色堂午夜福利国产TV6080| 小宝贝荡货啊用力水湿AⅤ视频 | 热99RE久久精品| AV无码国产在线看免费网站| 色婷婷五月综合激情中文字幕| 国产佗精品一区二区三区| 永久黄网站色视频免费直播| 人妻妺妺窝人体色WWW仙踪林| 国产精品任我爽爆在线播放| 无码熟熟妇丰满人妻啪啪| 国产精品成人一区二区不卡| 亚洲精品无码乱码成人爱色| 精东传媒剧国产MV的特点| 性生大片免费观看网站| 久久久久精品午夜福利| EEUSS鲁片一区二区三区| 无人区一线二线三线乱码| 国产麻豆一精品一AV一免费| 亚洲综合一区自偷自拍| 林静公交车被做到高C| 从大树开始的进化漫画| 亚洲精品二区国产综合野狼| 欧洲熟妇色XXXXⅩ欧洲老妇色|