try files的個人理解

2021-08-21 13:39:50 字數 709 閱讀 3943

以下述配置檔案為例:

location ~ \.php$
try_files的第乙個『$uri』代表nginx會去硬碟的對應路徑尋找檔案,如果能找到,則向下執行location塊中的內容,也就是把找到的檔案交給fastcgi執行,如果找不到,則嘗試在訪問的uri後面追加『/』,並繼續在硬碟中尋找對應目錄,處理同上,否則將這次請求內部重定向到最後乙個引數,也就是返回404。

這裡需要注意幾點:

一是訪問』your.site.com/example『時,若沒有配置』$uri/『則nginx只會去找對應的example檔案,而不會找example目錄;若訪問』your.site.com/example/『,nginx只會去找對應的example目錄,而不會找example檔案。也就是說若沒有try_files這項配置,nginx會完全按照請求的uri去硬碟中找檔案(不以』/『結尾)或目錄(以』/『結尾),不會擅自加添或去掉'/'。

二是try_files只是讓nginx』嘗試去找檔案『,找完不會直接跳出location塊,而是會順著往下執行,後面有proxy_pass或fastcgi_pass則將找到的檔案**到對應的地方,沒有proxy_pass或fastcgi_pass則直接將檔案返回給客戶端。當找不到檔案時,將這次請求內部重定向到最後乙個引數,所以最後乙個引數必須存在,例如 『=404』或重定向到其他的location等等,若不存在,則可能出現伺服器內部異常,例如迴圈重定向的異常。

DB LINK的個人理解

db link就是從乙個 oracle 資料庫服務連線到另乙個 oracle 資料庫服務的單方向的指標。db link連線是在 a資料庫上的使用者能使用儲存在a上的 link 來呼叫b 資料庫上的資訊。db link分為private和 public 兩種 private 只有建立該 db link...

Kalman filter的個人理解

最近在做目標跟蹤相關的工作,看了很多資料,零零總總的,過段時間自己都有些小混亂了 不知道是不是自己應該吃點核桃補腦了呢 在這裡mark些資料,當腦容量不足時候,就暫且卸掉一些,擴充容量後,再繼續裝載 kalman filter,wiki上對它的介紹很詳細,對應中文的介紹 對每一步k,定義矩陣a,h,...

ThreadLocal的個人理解

threadlocal的設計思想十分簡單,它的核心物件就是threadlocalmap,被宣告在thread類裡面,每個thread都持有乙個threadlocalmap,所以才能實現執行緒隔離,以達到儲存共享變數的作用 threadlocal.threadlocalmap threadlocals...