os.Getenv
安全性
預設情況下,當使用 os.Getenv
函數時,Hugo 允許訪問以下環境變數:
CI
環境變數- 任何以
HUGO_
開頭的環境變數
若要訪問其他環境變數,請調整您的網站配置。例如,若要允許訪問 HOME
和 USER
環境變數,可以使用以下設置:
hugo.
security:
funcs:
getenv:
- ^HUGO_
- ^CI$
- ^USER$
- ^HOME$
[security]
[security.funcs]
getenv = ['^HUGO_', '^CI$', '^USER$', '^HOME$']
{
"security": {
"funcs": {
"getenv": [
"^HUGO_",
"^CI$",
"^USER$",
"^HOME$"
]
}
}
}
深入了解 Hugo 的 安全政策。
範例
{{ getenv "HOME" }} → /home/victor
{{ getenv "USER" }} → victor
在建置您的網站時,您可以傳遞變數值:
MY_VAR1=foo MY_VAR2=bar hugo
或
export MY_VAR1=foo
export MY_VAR2=bar hugo
然後在模板內檢索這些值:
{{ getenv "MY_VAR1" }} → foo
{{ getenv "MY_VAR2" }} → bar