将密码添加到 blogdown 站点的一页

Adding a password to one page of a blogdown site

是否可以使用密码保护使用 R blogdown 制作并使用免费版 Netlify 发布的网站的一页?

如果没有,是否可以在 blogdown 网站上托管受密码保护的 RMD 文件?我尝试使用 encryptedRmd 包,但我认为它不适合这个..

看来你想做的是Netlify社区的问题。一旦创建了 blogdown 站点,它就只是一个静态站点,我猜您可以使用任何您想要的 Netlify 功能。 (似乎有可能:https://answers.netlify.com/t/password-protection-for-a-single-html-page/31117/7

我可以使用 Brent Scott's pagecryptr package, which is a R-wrapper for PageCrypt 为我网站上的一个页面添加基本密码保护。由于 R 包,设置非常简单。

  1. 创建受密码保护的 RMD 文件版本,将其编织到 HTML,并将其保存在某处(实际上是任何地方,但我将其放在 GitHub 上的私人存储库中)。我们将此文件称为 password.html.
  2. 在您的 TOML 文件中命名您想要密码保护的页面。我的看起来像这样:
[[menu.main]]
    name = "Portfolio"
    url = "/Portfolio/"

请注意,您不需要为此页面创建 RMD 或 HTML 文件,因为我们将使用 pagecryptr 创建它。

  1. 安装pagecryptr
install.packages("drat")
drat::addRepo("brentscott93")
install.packages("pagecryptr")
library(pagecryptr)
  1. 在不同的 R 脚本中,运行 pagecryptr 密码保护文件:
if(interactive()){
 file <- "~/password.html"
 pagecryptr(file, "password123", out_file = "~/content/Portfolio.html")
}

注意 pagecryptr 如何获取我们想要密码保护的文件 (password.html) 并为其写入 HTML 对应于我们在 TOML 中创建的页面 (Portfolio.html).第二个参数包含您要用于该网站的密码(在此示例中,它是 password123)。

提交 Portfolio.html 到 GitHub,您的网站上将有一个受密码保护的页面!