最小プランは無料であるHerokuに静的ファイルを置くための雛形を作っときました。
$ git clone git://github.com/komagata/heroku-static.git
$ cd heroku-static
$ heroku create foo-bar-buz
$ git push heroku master
komagata's heroku-static at master - GitHub
html, js, css, imageなど、静的ファイルだったらpublicディレクトリに置いてpushすればすぐ公開。
あんまり無料ホームページとして使われてもHerokuは困るだろうけど、git必須な時点で誰も彼も使うということにはならんでしょう(多分)。僕はjsとかのデモやサンプルを置く場所として使ってます。
中見てもらえばわかりますが、こういうのを置いてるだけです。
% cat config.ru
require 'rubygems'
require 'sinatra'
get('/') { open('public/index.html').read }
run Sinatra::Application
必要な物がherokuのgemとgitだけなので慣れればGAEより楽だと思います。みんなで金払ってHerokuがパワフルになるといいな。
「Herokuに静的ファイルを置く」というページを拝見させていただきました。大変参考になりました。
大変恐縮ですが、一点ご質問させていただきたいことがありますのでコメントさせていただきます。ご回答いただければ幸いですm_ _m
私はjavascriptとhtmlのページをherokuで公開しようと考えており、komagataさんが作成されたheroku-staticを利用させていただこうと思いました。
ですが、herokuにpushする段階になって以下のようなエラーが出てしまいました。
:git push heroku master
Counting objects: 11, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (7/7), done.
Writing objects: 100% (11/11), 1.14 KiB, done.
Total 11 (delta 0), reused 11 (delta 0)
-----> Heroku receiving push
-----> Ruby/Rack app detected
!
! Invalid RUBY_VERSION specified: Detected-Gemfile.lock-generated-by-0.9,-deleting...-No-ruby-version-specified
! Valid versions: ruby-1.9.3-p0, ruby-1.9.3-p125, rbx-1.2.4, rbx-2.0.0dev-20120115-1.9, rbx-2.0.0dev-20120115-1.8, rbx-2.0.0dev-20120123-1.9, rbx-2.0.0dev-20120123-1.8, ruby-1.9.2-p290, jruby-1.6.5.1, jruby-1.6.7, ruby-1.9.3, ruby-1.9.2, ruby-1.8.7, ruby-1.9.3-jruby-1.7.0.preview1, ruby-1.8.7-jruby-1.7.0.preview1, ruby-1.9.3-rbx-2.0.0dev, ruby-1.8.7-rbx-2.0.0dev
!
! Heroku push rejected, failed to compile Ruby/rack app
To git@heroku.com:foo-bar-buz-amaguri.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:foo-bar-buz-amaguri.git'
Gemfile.lockを生成したときのrubyのバージョンが古い、としかられているのかな?と思ったのですが、当方rubyには疎いのでどうしたらよいか明確にはわからない状態です。
この場合、どう対処すればよろしかったでしょうか?
$ rm Gemfile.lock
$ bundle
$ git commit -am 'Regenerate Gemfile'
$ git push heroku master
すれば行けるかもです。