« さくらのレンタルサーバでRubyGemsを使う | メイン | 送信者認証の普及 »

2005年03月20日

XREA で Ruby on Rails を使う

XREA で Ruby on Rails を使うことに挑戦してみました。

前提というかおおまかな方針というか

XREAではシェルアカウントでできることがかなり制限されています。よって、自分の手元のマシンで必要なものをインストールした後、ファイルをXREAサーバに転送することにします。

また、XREAのドメインウェブ機能を使って、独自ドメインのトップで動かすことを前提とします。そうでない場合はNon VHost Installationを参照してください。

なお、自分の場合は広告免除している環境で動かしましたが、そうでない場合でも基本的には同じと思われます。

RubyGems, Railsのインストール

自分の手元のマシンで、普通にRubyGemsとRailsをインストールします。 Getting Started With Railsあたりを参照。

インストールしたら、/usr/local/lib/ruby/gem と /usr/local/lib/ruby/site_ruby/1.8 のrubygems関連ファイルをXREAのサーバにアップロードします。ディレクトリの配置は以下の通りに。

/virtual/ID/lib/ruby/gem
/virtual/ID/lib/ruby/site_ruby/1.8

Rails環境の作成

自分の手元のマシンで Rails のプロジェクトを作成します。ここで、開発やテストを行って、動くようになったらXREAにファイルをアップロードして、production環境で動かすことになります。

たとえば、チュートリアルにあるTodoリストを作る場合、

% rails Todo
とします。ここで開発して動くようになったら、Todo ディレクトリ全体を XREA のサーバにアップロードします。 XREA側のアップロード先はpublic_html以下にしてはいけません。どこか別の場所、たとえばトップディレクトリにコピーして、public_htmlからTodo/publicにシンボリックリンクをはります。 (www.exapmle.comの部分は自分のドメインに適宜読み替えてください)
/virtual/ID/Todo
/virtual/ID/public_html/www.example.com -> ../../Todo/public

.htaccessの修正

Todo/public/.htaccessに以下の行を追加します。
SetEnv RUBYLIB /virtual/ID/lib/ruby/site_ruby/1.8:/virtual/ID/lib/ruby
SetEnv GEM_HOME /virtual/ID/lib/ruby/gem
SetEnv RAILS_ENV production
Rubyのライブラリのパスを追加し、RubyGemsのホームを設定し、Railsをproduction環境に設定しています。

データベースの作成

XREAではMySQLが使えるのでそれを利用します。XREAユーザ用管理メニューからMySQLのデータベースを作成し、必要なテーブルを作成します。そして、RailsプロジェクトのDB設定ファイル(Todo/config/database.yml)のproductionの部分を、それにあわせて修正します。
production:
  adapter: mysql
  database: データベース名
  host: localhost
  username: ユーザ名
  password: パスワード

投稿者 tam : 2005年03月20日 17:59

コメント

コメントしてください




保存しますか?