さくらインターネットのレンタルサーバー(スタンダード)でsinatra2を使う

はじめに

 諸事情により、さくらのレンタルサーバーでsinatraを使おうとしたのですが、web上の同種の情報が大分古く、そのままでは動かなかったので、備忘も兼ねて記録します。シェルはbashを使います。

環境

バージョン
ruby 2.4.3
rbenv 1.1.1
sinatra 2.0.1

手順

  1. 準備。rbenvruby-buildをダウンロードする。

    $ mkdir local
    $ cd local
    $ mkdir bin
    $ git clone git://github.com/sstephenson/rbenv.git rbenv
    
    $ mkdir rbenv/plugins
    $ cd rbenv/plugins/
    $ git clone git://github.com/sstephenson/ruby-build.git ruby-build
    $ cd ~
    
  2. .bashrcに設定追加

    export RBENV_ROOT=$HOME/local/rbenv
    export PATH=$HOME/local/bin:$RBENV_ROOT/bin:$PATH
    export TMPDIR=~/tmp
    
    eval "$(rbenv init -)"
    
  3. .bashrcを反映する

    $ source .bashrc
    
  4. rubysinatraをインストール

    $ rbenv install 2.4.3
    $ rbenv rehash
    $ rbenv global 2.4.3
    $ gem install sinatra
    
  5. ~/wwwに、下記のindex.cgiを作る

    index.cgi
    #! /home/ユーザー名/local/rbenv/versions/2.4.3/bin/ruby
    
    APP_HOME='/home/ユーザー名/deploy/app'
    load "#{APP_HOME}/start.rb"
    set :run, false
    
    Rack::Handler::CGI.run Sinatra::Application
    
  6. index.cgiに実行権限を付加する

    $ chmod +x ~/www/index.cgi
    
  7. ~/deploy/appに、sinatra用のファイルを設置する

    start.rb
    require 'sinatra'
    
    get '/?' do
      'Hello World.'
    end
    
  8. ブラウザで http://ユーザー名.sakura.ne.jp/index.cgi にアクセス。"Hello World."が表示されたら成功

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.