Nginx基礎(chǔ)location語法及功能配置實例
這一篇將簡單說一下Nginx的location功能。
1.Nginx location
1.1.location作用
location指令的作用就是根據(jù)用戶請求的URI來執(zhí)行不同的應(yīng)用。
1.2.location語法
location [ = | ~ | ~* | ^~ ] uri {...}
將以上語法分為四部分進(jìn)行說明:
location:指令
[ = | ~ | ~* | ^~ ]:匹配的標(biāo)識
uri:匹配的網(wǎng)站地址
{...}:匹配uri后要執(zhí)行的配置段
注意:
與~*的區(qū)別是:~區(qū)分大小寫,~*不區(qū)分大小寫
^~:進(jìn)行常規(guī)字符串匹配后,不做正則表達(dá)式的檢查
1.3.location匹配示例
location = / { [ configuration A] } location / { [ configuration B] } location /documents { [ configuration C] } location ^~ /images/ { [ configuration D] } location ~* \.(gif|jpg|jpeg)$ { [ configuration E] }
上述配置,請求“/”時,匹配configuration A
請求"/index.html"時,講匹配configuration B
請求“/documents/docunment.html”時,匹配configuration C
請求“images/1.gif”時,匹配configuration D
請求“/documents/1.jpg”時,匹配configuration E
1.4.location配置實例
server { listen 80; server_name bbs.yygg.com; root html/bbs; location / { return 401; } location =/ { return 402; } location /documents/ { return 403; } location ^~ /images/ { return 405; } location ~* \.(gif|jpg|jpeg)$ { return 406; }
測試結(jié)果
[root@nginx-01 ~]# curl -s -o /dev/null -I -w "%{http_code}\n" bbs.yygg.com
402
[root@nginx-01 ~]# curl -s -o /dev/null -I -w "%{http_code}\n" bbs.yygg.com/
402
[root@nginx-01 ~]# curl -s -o /dev/null -I -w "%{http_code}\n" bbs.yygg.com/index.html
401
[root@nginx-01 ~]# curl -s -o /dev/null -I -w "%{http_code}\n" bbs.yygg.com/documents/documents.html
403
[root@nginx-01 ~]# curl -s -o /dev/null -I -w "%{http_code}\n" bbs.yygg.com/images/1.gif
405
[root@nginx-01 ~]# curl -s -o /dev/null -I -w "%{http_code}\n" bbs.yygg.com/documents/1.jpg
406
[root@nginx-01 ~]# curl -s -o /dev/null -I -w "%{http_code}\n" bbs.yygg.com/yyang/
401
返回的狀態(tài)碼也是與配置中的規(guī)則相匹配的。
1.5.不用uri及特殊字符組合匹配的順序說明
location =/ {}:精確匹配
location ^~ /images/ {}:常規(guī)字符串匹配,不做正則匹配
location ~* \.(gif|jpg|jpeg)$ {}:正則匹配
location /documents/ {}:常規(guī)字符串匹配,如果有正則,優(yōu)先匹配正則
location / {}:所有l(wèi)ocation都不匹配后默認(rèn)匹配
以上就是Nginx基礎(chǔ)location語法及功能配置實例的詳細(xì)內(nèi)容,更多關(guān)于Nginx location語法功能配置的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
nginx安裝圖解_動力節(jié)點Java學(xué)院整理
這篇文章主要為大家詳細(xì)介紹了nginx安裝的圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08nginx?添加http_stub_status_module模塊
本文主要介紹了nginx?添加http_stub_status_module模塊,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05詳解Nginx如何根據(jù)swagger關(guān)鍵字屏蔽頁面
這篇文章主要為大家詳細(xì)介紹了Nginx 如何根據(jù)swagger關(guān)鍵字屏蔽頁面的實現(xiàn)方案,文中有詳細(xì)的解決方案,對我們的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2023-08-08使用Lvs+Nginx集群搭建高并發(fā)架構(gòu)的實現(xiàn)示例
本文主要介紹了使用Lvs+Nginx集群搭建高并發(fā)架構(gòu)的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-12-12