文件
a 專案

root

設定網站的根路徑,用於各種比對器和指令,以存取檔案系統。如果未設定,預設網站根目錄為目前工作目錄。

特別是,此指令設定 {http.vars.root} 佔位符。它與同一個區塊中的其他 root 指令互斥,因此可以安全地定義多個根目錄,並使用會相交的比對器:它們不會串接並覆寫彼此。

此指令不會自動啟用提供靜態檔案,因此通常與 file_server 指令php_fastcgi 指令 搭配使用。

語法

root [<matcher>] <path>
  • <path> 是用於網站根目錄的路徑。

請注意,如果 <path> 引數以 / 開頭,可能會被剖析器誤認為 比對器代碼。為了解除歧義,請指定萬用字元比對器代碼 (*)。請參閱以下範例。

範例

將網站根目錄設定為 /home/bob/public_html(假設 Caddy 以使用者 bob 執行)

root * /home/bob/public_html

將網站根目錄設定為 public_html (相對於目前的工作目錄),適用於所有要求

(這裡不需要比對記號,因為我們的網站根目錄是相對路徑,因此不會以正斜線開頭,不會造成歧義。)

root public_html

僅變更 /foo/* 中要求的網站根目錄

root /foo/* /home/user/public_html/foo

root 指令通常與 file_server 配對使用,用於提供靜態檔案,或與 php_fastcgi 配對使用,用於提供 PHP 網站

example.com {
	root * /srv
	file_server
}