Ruby 杰基尔在heroku上的博客
我正试图在heroku上建立一个jekyll博客。这是我的目录结构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
.
├── 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文件以使用中间件(如),并将其指向公共目录
- 将静态文件签入git repo。例如,进入类似“public”的目录
- 设置一个config.ru文件以使用中间件(如),并将其指向公共目录
- 我同意phsr的回答。使用amazon CDN或类似的东西可能会更好地服务静态网站。但是,要回答您的问题:
你可以克隆并推送到heroku应用程序,然后在那里摆弄实际的设置。我在heroku上运行jekyll博客时遇到了很多问题,但最终还是成功了 如果这仍然相关,您可以在github上看到完整的代码: 你可以克隆并推送到heroku应用程序,然后在那里摆弄实际的设置