最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx try_files 指令常見(jiàn)用法示例

 更新時(shí)間:2026年05月11日 09:35:36   作者:學(xué)亮編程手記  
try_files是Nginx用于按順序檢查文件是否存在并返回第一個(gè)找到的文件,本文給大家介紹Nginx try_files 指令常見(jiàn)用法示例,感興趣的朋友跟隨小編一起看看吧

try_files 是 Nginx 中一個(gè)非常實(shí)用的指令,用于按順序檢查文件是否存在,并返回第一個(gè)找到的文件。如果所有文件都不存在,則執(zhí)行最后一個(gè)參數(shù)指定的回退操作(通常是返回錯(cuò)誤碼或轉(zhuǎn)發(fā)請(qǐng)求)。

基本語(yǔ)法

try_files file1 file2 ... =code|uri|@named_location;

常見(jiàn)用法示例

1.SPA(單頁(yè)應(yīng)用)常用配置

location / {
    try_files $uri $uri/ /index.html;
}
  • 先嘗試訪問(wèn)請(qǐng)求的 URI 對(duì)應(yīng)的文件
  • 再嘗試訪問(wèn) URI 對(duì)應(yīng)的目錄
  • 都不存在則返回 /index.html

2.帶回退代理

location / {
    try_files $uri $uri/ @backend;
}
location @backend {
    proxy_pass http://backend_server;
}
  • 靜態(tài)文件不存在時(shí)轉(zhuǎn)發(fā)到后端應(yīng)用

3.檢查多個(gè)路徑

location /images/ {
    try_files /cache$uri $uri =404;
}
  • 先檢查緩存目錄
  • 再檢查原始路徑
  • 都不存在返回 404

參數(shù)詳解

$uri

當(dāng)前請(qǐng)求的 URI(不包含查詢參數(shù))

$uri/

表示目錄,會(huì)嘗試尋找目錄下的索引文件(需配合 index 指令)

回退類型

靜態(tài)文件/路徑

try_files $uri /default.html;

命名 location(@ 開(kāi)頭)

try_files $uri @fallback;
location @fallback {
    # 處理邏輯
}

錯(cuò)誤碼

try_files $uri =404;
try_files $uri =403;

代理轉(zhuǎn)發(fā)

try_files $uri @proxy;
location @proxy {
    proxy_pass http://backend;
}

實(shí)際應(yīng)用場(chǎng)景

場(chǎng)景1:PHP 應(yīng)用

location ~ \.php$ {
    try_files $uri =404;
    fastcgi_pass unix:/var/run/php-fpm.sock;
}
  • 防止直接訪問(wèn)不存在的 PHP 文件

場(chǎng)景2:多級(jí)緩存

location /assets/ {
    try_files /cdn-cache/$uri 
              /local-cache/$uri 
              $uri 
              @generate_asset;
}

場(chǎng)景3:維護(hù)模式

location / {
    try_files /maintenance.html $uri $uri/ @app;
}
  • 優(yōu)先顯示維護(hù)頁(yè)面

注意事項(xiàng)

  1. 順序重要:Nginx 按順序檢查,找到即停
  2. 性能影響:每個(gè)文件檢查都會(huì)產(chǎn)生磁盤(pán) I/O
  3. 相對(duì)路徑:相對(duì)于 rootalias 指令
  4. 最后參數(shù):必須指定回退操作
  5. 內(nèi)部重定向try_files 會(huì)內(nèi)部重定向,可能改變 $uri

與if的對(duì)比

? 不推薦(低效):

if (-f $request_filename) {
    # 處理靜態(tài)文件
}

? 推薦(高效):

try_files $uri @dynamic;

調(diào)試技巧

添加調(diào)試日志:

location / {
    try_files $uri $uri/ @backend;
    error_log /var/log/nginx/try_files.log debug;
}

try_files 的核心思想是 “按優(yōu)先級(jí)嘗試,優(yōu)雅降級(jí)”,合理使用可以大大簡(jiǎn)化配置邏輯并提高性能。

到此這篇關(guān)于Nginx try_files 指令常見(jiàn)用法示例的文章就介紹到這了,更多相關(guān)Nginx try_files 指令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Nginx代理接口訪問(wèn)返回404的實(shí)現(xiàn)示例

    Nginx代理接口訪問(wèn)返回404的實(shí)現(xiàn)示例

    因?yàn)椴煌瑯I(yè)務(wù)系統(tǒng)間有接口調(diào)用,存在跨域問(wèn)題,為了解決同源策略,需要將接口通過(guò)nginx去轉(zhuǎn)發(fā),本文主要介紹了Nginx代理接口訪問(wèn)返回404的實(shí)現(xiàn)示例,感興趣的可以了解一下
    2024-06-06
  • prometheus監(jiān)控nginx的實(shí)現(xiàn)

    prometheus監(jiān)控nginx的實(shí)現(xiàn)

    這篇文章主要介紹了prometheus監(jiān)控nginx的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • nginx通過(guò)https部署vue項(xiàng)目的完整步驟

    nginx通過(guò)https部署vue項(xiàng)目的完整步驟

    在實(shí)際開(kāi)發(fā)中,我們會(huì)以https形式進(jìn)行頁(yè)面訪問(wèn),下面這篇文章主要給大家介紹了關(guān)于nginx通過(guò)https部署vue項(xiàng)目的完整步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • nginx反向代理之多端口映射的實(shí)現(xiàn)

    nginx反向代理之多端口映射的實(shí)現(xiàn)

    這篇文章主要介紹了nginx反向代理之多端口映射的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Nginx 防止被域名惡意解析的辦法

    Nginx 防止被域名惡意解析的辦法

    這篇文章主要介紹了Nginx 防止被域名惡意解析的方法的相關(guān)資料,希望通過(guò)本文能幫助到大家,讓大家掌握理解這部分內(nèi)容,需要的朋友可以參考下
    2017-10-10
  • Centos下編譯安裝Nginx教程詳解

    Centos下編譯安裝Nginx教程詳解

    這篇文章主要介紹了Centos下編譯安裝Nginx的教程詳解,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-12-12
  • Nginx-rewrite模塊概述

    Nginx-rewrite模塊概述

    從功能上看 rewrite 和 location 似乎有點(diǎn)像,都能實(shí)現(xiàn)跳轉(zhuǎn),主要區(qū)別在于 rewrite 是在同一域名內(nèi)更改獲取資源的路徑,這篇文章主要介紹了Nginx-rewrite模塊詳細(xì)介紹,需要的朋友可以參考下
    2023-06-06
  • Nginx/Openresty中啟用http2支持的方法教程

    Nginx/Openresty中啟用http2支持的方法教程

    Openresty/Nginx默認(rèn)是不支持http2的,需要將http2模塊編譯進(jìn)應(yīng)用中。這篇文章主要給大家介紹了關(guān)于在Nginx/Openresty中啟用http2支持的方法教程,文中介紹的非常詳細(xì),對(duì)大家具有一的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-07-07
  • nginx反向代理java項(xiàng)目方式

    nginx反向代理java項(xiàng)目方式

    文章簡(jiǎn)要介紹了如何使用Nginx作為反向代理來(lái)部署Java項(xiàng)目,核心在于配置proxy_pass指令
    2024-12-12
  • Nginx配置實(shí)現(xiàn)用IP灰度測(cè)試(不同用戶ID)

    Nginx配置實(shí)現(xiàn)用IP灰度測(cè)試(不同用戶ID)

    本文主要介紹了使用Nginx配置實(shí)現(xiàn)基于IP的灰度發(fā)布實(shí)驗(yàn),以及如何通過(guò)不同用戶ID測(cè)試灰度發(fā)布,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-11-11

最新評(píng)論

普定县| 沈阳市| 潞城市| 康乐县| 西青区| 酉阳| 新河县| 乐都县| 定安县| 广昌县| 玛曲县| 高雄市| 庐江县| 宾阳县| 屯留县| 台北县| 莎车县| 大兴区| 丹江口市| 宁城县| 思南县| 莱芜市| 连南| 花莲市| 嵩明县| 浦北县| 红原县| 衡南县| 南通市| 阜新市| 湾仔区| 原平市| 黎平县| 清丰县| 土默特右旗| 岗巴县| 通山县| 怀柔区| 舟山市| 贵阳市| 彭州市|