serversman@vps上でrailsを導入するまでのメモ3(apache,sqlite,git)

・前回
http://d.hatena.ne.jp/alpha_neet/20110227/1298809212


特に注釈がない限りはrootで作業してます

作業用アカウントを作成

useradd work
passwd work

-g wheel を追加してないのでsudoできないので注意。
あとsshを設定してないのでログインはadminから入ってsu - workにしないといけない。


でも多分せきゅりちー的にはこっちの方がいい気がする
su root も出来ないとかにするとさらに良さそうだけど、めんどいので今回はパス。

chmod 755 /home/work

ブラウザからアクセスする時のために作業ディレクトリのパーミッションを変更。
あまりセキュリティ的によろしくない方法らしい。

railsで雛形を作成

さっき作ったアカウントで作業します。
rootでやるとブラウザで見たときPermission deniedが出ます。

su - work
mkdir public_html
cd public_html
rails new bbs

apache上でrailsを走らす

gem install passenger
yum install gcc-c++
yum install curl-devel
yum install openssl-devel
yum install zlib-devel
yum install httpd-devel
yum install apr-devel
yum install apr-util-devel

既にインストールしているものもあるけどしれないけど問題ないのでスルーで

cd ~/src/ruby-1.8.7-p302/ext/openssl/
ruby extconf.rb
make
make install
passenger-install-apache2-module

しばらく意味不明なログが流れた後最後の方に設定ファイルを吐き出します
バージョンやパスが違うから必ず自分のターミナル上からコピーすること。

LoadModule passenger_module /usr/local/ruby/lib/ruby/gems/1.8/gems/passenger-3.0.3/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/ruby/lib/ruby/gems/1.8/gems/passenger-3.0.3
PassengerRuby /usr/local/ruby/bin/ruby

rails専用の設定ファイルを作って上記の設定をコピペする

vim /etc/httpd/conf.d/rails.conf

Enterを押すと別の設定ファイルも吐き出す


   ServerName www.yourhost.com
   DocumentRoot /somewhere/public    # <-- be sure to point to 'public'!
   
      AllowOverride all              # <-- relax Apache security settings
      Options -MultiViews            # <-- MultiViews must be turned off
   

これも専用の設定ファイルを作って以下のように変更する
rails用の設定に RailsEnv development の追加を忘れないようにする。

vim /etc/httpd/conf.d/bbs.conf

Listen 8000


  RailsEnv development
  ServerName IPアドレスを直打ちかURL
  DocumentRoot /home/work/public_html/bbs/public
  
     AllowOverride all
     Options -MultiViews
  

apacheを再起動する。

/etc/init.d/httpd restart

http://IPアドレスかURL:8000

にアクセスしてrailsの初期ページが表示されれば成功

apacheの再起動時のエラーの対処

httpd: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1 for ServerName

再起動時に上記のようなエラーが出た場合は以下のように変更を加える

vim /etc/hosts

127.0.0.1 localhost.localdomain localhost127.0.0.1 dacelo localhost.localdomain localhost

vim /etc/http/conf/httpd.conf

#ServerName www.example.com:80
↓
#ServerName www.example.com:80
ServerName dacelo:80

apacheを再起動してエラーが出なくなっていたら成功

/etc/init.d/httpd restart

sqlite3のインストール

gem install sqlite3-ruby

をしたら

sqlite3-ruby only supports sqlite3 versions 3.6.16+, please upgrade!

とでる。yumの最新のsqliteは3.3.6なので仕方ないので手動でインストール

cd ~/src
wget http://www.sqlite.org/sqlite-autoconf-3070500.tar.gz
tar zxf sqlite-autoconf-3070500.tar.gz
cd sqlite-autoconf-3070500
./configure
make
make install

ターミナルを再起動して(しなくてもいいのかも)

which sqlite3
sqlite3 -version

の表示がそれぞれ

/usr/local/bin/sqlite3
3.7.5

となっていれば成功

最後の確認

http://IPアドレスかURL:8000


をブラウザで開いてrailsのトップページのAbout your application’s environmentのリンクをクリックして
現在動いているのrubyrailsのバージョンが表示されれば成功


もしエラーが出てたらエラーメッセージも表示されるのでそのメッセージをぐぐって解決してください


お疲れ様です。

gitのインストール

vim /etc/yum.repos.d/CentOS-Base.repo

を開いて最後に以下のように追加

[dag]
name=Dag RPM Repository for Redhat EL5
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
enabled=1
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt

yum install git

が出来るようになっていれば成功

参考URL

Apacheのエラーの対処
http://blog.dacelo.info/apache/entry-713.html


・sqlite3のインストール方法
http://memo.yomukaku.net/entries/154


apache上でrailsを動かす時の注意点
http://d.hatena.ne.jp/ginpei/20100522/rails_on_apache

yum install git をする方法
http://d.hatena.ne.jp/uk_oasis/20090807/1249633626