Ruby 杰基尔在heroku上的博客

Ruby 杰基尔在heroku上的博客,ruby,heroku,jekyll,Ruby,Heroku,Jekyll,我正试图在heroku上建立一个jekyll博客。这是我的目录结构 . ├── Gemfile ├── Gemfile.lock ├── _layouts │   └── default.html ├── _posts ├── _site │   ├── Gemfile │   ├── Gemfile.lock │   ├── config.ru │   └── index.html ├── config.ru └── index.html 我的档案有 source "http://rubyg

我正试图在heroku上建立一个jekyll博客。这是我的目录结构

.
├── Gemfile
├── Gemfile.lock
├── _layouts
│   └── default.html
├── _posts
├── _site
│   ├── Gemfile
│   ├── Gemfile.lock
│   ├── config.ru
│   └── index.html
├── config.ru
└── index.html
我的档案有

source "http://rubygems.org"
gem 'jekyll'
只有另一个包含任何内容的文件是
index.html
with

Hello world!
如果我运行
jekyll--server
它在本地运行良好。但是如果我
git推heroku master
(在检查完所有内容后),我会在heroku日志中得到这个错误

!! Unexpected error while processing request: undefined method `[]' for nil:NilClass

如何让我的jekyll博客在Heroku上运行?

jekyll生成静态HTML文件,因此无需使用Heroku。最好在S3上托管它。请参阅在S3上托管静态站点。有了AWS免费层,您的站点第一年将完全免费(只要它的大小小于5GB),并且在一个月后将花费几分钱

Jekyll生成静态HTML文件,因此无需使用Heroku。最好在S3上托管它。请参阅在S3上托管静态站点。有了AWS免费层,您的站点在第一年将完全免费(只要它的大小不超过5GB),之后的一个月将花费几便士

我同意phsr的回答。使用amazon CDN或类似的东西可能会更好地服务静态网站。但是,要回答您的问题:

  • 将静态文件签入git repo。例如,进入类似“public”的目录
  • 设置一个config.ru文件以使用中间件(如),并将其指向公共目录

    • 我同意phsr的回答。使用amazon CDN或类似的东西可能会更好地服务静态网站。但是,要回答您的问题:

      • 将静态文件签入git repo。例如,进入类似“public”的目录
      • 设置一个config.ru文件以使用中间件(如),并将其指向公共目录

      我在Heroku上运行jekyll博客时遇到了很多问题,但最终还是成功了

      如果这仍然相关,您可以在github上看到完整的代码:


      你可以克隆并推送到heroku应用程序,然后在那里摆弄实际的设置。

      我在heroku上运行jekyll博客时遇到了很多问题,但最终还是成功了

      如果这仍然相关,您可以在github上看到完整的代码:

      你可以克隆并推送到heroku应用程序,然后在那里摆弄实际的设置