This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/176
Webアプリケーションを開発するときは、動作確認のためにローカルでWebサーバを立ち上げることになります。Railsアプリケーションでは、デフォルトでWebrickを使うようになっています
(mongrelをインストールしている場合は、デフォルトでmongrelを使うようになっています。また、lighttpdがインストールされている場合もデフォルトでlighttpdを使うようになります。)
WebrickはRubyに標準でついてくるし、使い方も大変簡単で便利なのですが、本番環境ではLighttpdやApacheを使うことが多いので、動作確認でもLighttpdを使いたくなったりします。
というわけで、Lighttpdを使って開発を行うときのポイントをメモしておきます。
(1) lighttpdコマンドにPATHを通す
lighttpdをインストールしたら、lighttpdのコマンドにPATHを通しておきます。Debianの場合、/usr/local
/sbin/ligh
ttpdあたりにあります(ソースからインストールした場合)
ちなみに、現時点ではlighttpd-1
.5.0系のバージョンは設定ファイルの書き方などが1.4.0系とはだいぶ変わっていて、Railsが追従できていないので、1.4.0系の最新版を使うことをお勧めします。
(2) Webサーバは起動しっぱなしで使用する
まず、以下のコマンドで起動します。
$ ./script/s
erver lighttpd
最初に起動したときに、config/lig
httpd.conf
ファイルの雛形が生成されるので、一旦Ctrl+Cでサーバを停止して設定ファイルを適宜書き換えます。そして再び、今度は-dオプションをつけて起動します。
$ ./script/s
erver -d
二度目以降はlighttpdを指定しなくても自動的にlighttpdが起動します。(逆に、webrickを使いたい場合は明示的にwebrickを指定する必要があります)
(3) プラグインの書き換え等を行ったら、fcgiプロセスを再起動
プラグインのように自動リロードされないコードを編集したときは、以下のコマンドでfcgiプロセスを起動しなおします。
$ ./script/p
rocess/rea
per -a graceful
次回ブラウザからアクセスされたタイミングで、プロセスが再起動し、プラグインなどの修正箇所が反映されます。
(4) logger.deb
ugを使ってデバッグ
-dオプションをつけてWebサーバを起動すると、pの出力が画面に出なくなるので、かわりにlogger.deb
ugを使います。詳細は「
Railsでデバッグをする7つの方法」を参考にしていただければ。
(5) Webサーバの停止の仕方
以下でOK.
$ kill `cat tmp/pids/l
ighttpd.pi
d`
大体こんな感じでしょうか。
Enjoy!
This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/176