您好,登錄后才能下訂單哦!
本篇內容介紹了“Nginx的location功能怎么配置”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
1.Nginx location 1.1.location作用
location指令的作用就是根據用戶請求的URI來執行不同的應用。
1.2.location語法
location [ = | ~ | ~* | ^~ ] uri {...}
將以上語法分為四部分進行說明:
location:指令[ = | ~ | ~* | ^~ ]:匹配的標識uri:匹配的網站地址{...}:匹配uri后要執行的配置段
注意:
~與~*的區別是:~區分大小寫,~*不區分大小寫^~:進行常規字符串匹配后,不做正則表達式的檢查
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; }
測試結果
[root@nginx-01 ~]# curl -s -o /dev/null -I -w "%{http_code}\n" bbs.yygg.com402[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.html401[root@nginx-01 ~]# curl -s -o /dev/null -I -w "%{http_code}\n" bbs.yygg.com/documents/documents.html403[root@nginx-01 ~]# curl -s -o /dev/null -I -w "%{http_code}\n" bbs.yygg.com/images/1.gif405[root@nginx-01 ~]# curl -s -o /dev/null -I -w "%{http_code}\n" bbs.yygg.com/documents/1.jpg406[root@nginx-01 ~]# curl -s -o /dev/null -I -w "%{http_code}\n" bbs.yygg.com/yyang/401
返回的狀態碼也是與配置中的規則相匹配的。
1.5.不用uri及特殊字符組合匹配的順序說明
location =/ {}:精確匹配location ^~ /images/ {}:常規字符串匹配,不做正則匹配location ~* \.(gif|jpg|jpeg)$ {}:正則匹配location /documents/ {}:常規字符串匹配,如果有正則,優先匹配正則location / {}:所有location都不匹配后默認匹配
“Nginx的location功能怎么配置”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。