我停止写博客有一段时间,然后当我回到我的博客时,我在一台有不同软件包版本的新机器上工作。
显然,我的旧版本的宁静峰主题与新安装的雨果版本不兼容,所以我写了博客::install_theme("kakawait/Hugo宁静峰主题",force=TRUE(来解决这个问题。
blogdown::build_site((然后返回以下错误:
Error: Error building site: "/home/simon/git/snippets/content/post/2021-10-01-quels-sont-les-monuments-les-plus-courants/index.html:14:14": failed to render shortcode "blogdown/postref": failed to process shortcode: "/home/simon/git/snippets/layouts/shortcodes/blogdown/postref.html:1:10": execute of template failed: template: shortcodes/blogdown/postref.html:1:10: executing "shortcodes/blogdown/postref.html" at <getenv "BLOGDOWN_POST_RELREF">: error calling getenv: access denied: "BLOGDOWN_POST_RELREF" is not whitelisted in policy "security.funcs.getenv"; the current security configuration is:
[security]
enableInlineShortcodes = false
[security.exec]
allow = ['^dart-sass-embedded$', '^go$', '^npx$', '^postcss$']
osEnv = ['(?i)^(PATH|PATHEXT|APPDATA|TMP|TEMP|TERM)$']
[security.funcs]
getenv = ['^HUGO_']
[security.http]
methods = ['(?i)GET|POST']
urls = ['.*']
最低版本:blogdown::serve_site()
应该修复它。
短版本:编辑";layouts/shortcodes/blogdown/postref.html";将BLOGDOWN_POST_RELREF替换为HUGO_BLOGDOWN_POST_REFREF。
长版本:blogdown的变更日志:列出了2021年12月以来的以下错误修复:处理Hugo 0.91.0中的新安全策略,方法是将内部环境变量BLOGDOWN_POST_RELREF(在shortcode layouts/shortcodes/BLOGDOWN/postref.html中(重命名为Hugo_BLOGDOWN_POST_REPREF(感谢@Nitheshneral#672,@gergiu#673(
我最终手动编辑了文件";layouts/shortcodes/blogdown/postref.html";从我的回购中更换线路
{{ if eq (getenv "BLOGDOWN_POST_RELREF") "true" }}{{ .Page.RelPermalink }}{{ else }}{{ .Page.Permalink }}{{ end }}
使用
{{ if eq (getenv "HUGO_BLOGDOWN_POST_RELREF") "true" }}{{ .Page.RelPermalink }}{{ else }}{{ .Page.Permalink }}{{ end }}