【问题标题】:Blogdown posts appearing in RStudio but not on Github Pages出现在 RStudio 中但不在 Github 页面上的 Blogdown 帖子
【发布时间】:2017-08-31 07:02:03
【问题描述】:

我正在尝试在 Github 页面上部署一个内置 blogdown 的网站,但遇到了一个问题,即某些内容在实时版本中导致 404,但在 RStudio 中提供时工作正常。

可以在here 上查看已部署的页面,并且可以在Github 上查看其源代码。

有问题的页面位于 https://dshkol.github.io/2017/08/30/starting-a-blog/ - 打开会产生 404 错误。在 RStudio 中使用 blogdown::serve_site 启动时,此页面呈现良好。

重要的是,blogdown 页面的所有其他部分都可以在 RStudio 和 Github 页面上使用。这包括 /Projects/、/Contact/ 和 /About/。

该网站使用 Hugo Ghostwriter 主题,这是 blogdown 文档中推荐的主题之一。

TOML 文件的相关(?)部分:

baseurl = "https://dshkol.github.io/"
publishDir = "../dshkol.github.io"
title = "dshkol blog"
theme = "ghostwriter"
languageCode = "en-us"
disqusShortname = "dshkol"
googleAnalytics = "XXX"
ignoreFiles = ["\\.Rmd$", "\\.Rmarkdown$", "_files$", "_cache$"]



[Taxonomies]
    tag = "tags"

[Params]
    intro = true
    headline = "DSHKOL"
    description = "Thoughts and words"
    opengraph = true
    shareTwitter = true
    shareFacebook = true
    shareGooglePlus = true
    shareLinkedIn = false
    dateFormat = "Mon, Jan 2, 2006"
    highlightJsUrl = ""
    highlightJsLocalUrl = ""

[Permalinks]
    post = "/:year/:month/:day/:slug/"

[[menu.main]]
    name = "Blog"
    url = "/"
    weight = 1

[[menu.main]]
    name = "Projects"
    url = "/project/"
    weight = 2

[[menu.main]]
    name = "Contact"
    url = "/page/contact/"
    weight = 3

[[menu.main]]
    name = "About"
    url = "/page/about/"
    weight = 4

我的会话信息:

R version 3.4.1 (2017-06-30)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: OS X El Capitan 10.11.6

Matrix products: default
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib

locale:
[1] en_CA.UTF-8/en_CA.UTF-8/en_CA.UTF-8/C/en_CA.UTF-8/en_CA.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.12    bookdown_0.5    digest_0.6.12   rprojroot_1.2   mime_0.5        backports_1.1.0
 [7] magrittr_1.5    evaluate_0.10.1 blogdown_0.1.3  stringi_1.1.5   rmarkdown_1.6   tools_3.4.1    
[13] servr_0.7       stringr_1.2.0   httpuv_1.3.5    compiler_3.4.1  htmltools_0.3.6 knitr_1.17   

以及相关的雨果细节:

> Sys.which('hugo')
hugo 
  "" 
> blogdown:::find_hugo()
[1] "/Users/dshkol/Library/Application Support/Hugo/hugo"
> blogdown::hugo_version()
[1] ‘0.26’

【问题讨论】:

    标签: r github-pages hugo blogdown


    【解决方案1】:

    截至提交 7da94409016057580648c15c7f7cb9886ad4d6a1,您尚未将帖子 2017/08/30/starting-a-blog/index.html 推送到您的 Github 存储库。如果您通过 Github Pages 部署,您应该提交并推送 public/ 文件夹中的所有内容。

    正如我在the blogdown book 中所写,建议您通过 Netlify 而不是 Github Pages 进行部署,除非您能证明后者是合理的(我个人认为没有一个理由仍然应该使用 Github Pages 来构建网站;这里是another shout-out)。

    【讨论】:

    • 谢谢。这是一个尴尬的错过;但是,很好奇这是怎么发生的。我的工作流程是为我的 github.io 存储库指定 publishDir=。具有适当帖子内容的文件夹已生成到该存储库中,但没有与其他所有内容一起推送。作为测试,我自己手动推送了相应的目录,这很有效。您首选的工作流程是不使用 TOML 中的 publishDir 参数,而只推送整个 public/ 文件夹吗?我将检查 Netlify 部署。最后,感谢您对 R 世界的帮助和许多贡献。
    • 设置publishDir即可。我在书中的同一部分提到过:bookdown.org/yihui/blogdown/github-pages.html 我不知道您是如何错过 HTML 文件的,但是使用 Netlify,您无需记住推送发布目录。少一件事要记住 == 更好。
    猜你喜欢
    • 1970-01-01
    • 2019-05-14
    • 2019-05-03
    • 2020-05-12
    • 1970-01-01
    • 2020-07-07
    • 1970-01-01
    • 2015-02-13
    • 1970-01-01
    相关资源
    最近更新 更多