0

Rubyを少し勉強しようと思っています。Ubuntu マシンに Ruby をインストールし、Apache を使用しています。コンソールでApacheを再起動してctrl-rを押す必要があるビューを更新することを除いて、すべて正常に機能します.ctrl-rを押すだけではブラウザが更新されません。

どうやらキャッシングが行われているようですが、そうしなければならないのでしょうか? つまり、Ruby on Rails に固有のものなのでしょうか? 私はこれについてグーグルで調べてみましたが、唯一の答えは、長ったらしいルーチンをインストールすることです。開発に関しては、かなり退屈な方法のように思えます。

4

5 に答える 5

5

開発には Apache が最適です。

Passenger (mod_rails) をインストールして...指示に従ってください...

/etc/hosts が含まれるように、各サイトに設定しました

127.0.0.1 myapp

/etc/apache2/sites-available/myapp で、次のようなエントリで Apache 仮想ホストを使用します

<VirtualHost *:80>
  ServerName myapp
  DocumentRoot /path/to/myapp/public
  RailsEnv development
  RailsAllowModRewrite off
    <directory "/path/to/myapp/public">
      Order allow,deny
      Allow from all
    </directory>
</VirtualHost>

有効にして再起動する

sudo a2ensite myapp
sudo /etc/init.d/apache2 restart

そうすれば、実行中のスクリプト/サーバーはありません...常に開発モードで実行されています-ブラウザでhttp://myappを指定するだけです

于 2009-07-10T05:04:22.433 に答える
3

開発モードに apache を使用しないでください。スクリプト/サーバーを使用して、mongrel gem をインストールします (sudo gem install mongrel)。Mongrel は WEBrick よりも高速で、開発ログをそれが実行されているコンソールにダンプします。それは開発をまともなものにします。

于 2009-07-09T23:55:22.073 に答える
0

私は開発目的で Passenger (別名 modrails) で Apache を使用していますが、ここでは問題なく動作します。httpd.conf で "RailsEnv development" を設定して、Rails を開発モードで使用してください。

于 2009-07-10T04:48:57.283 に答える
0

コードを変更するたびにサーバーを再起動する必要があるため、Apache は Rails のような開発には適していません。Rails には、(IIRC) スクリプト/サーバーを実行して起動できる独自の開発サーバーが付属しています。少し変更するたびに再起動する必要がないため、開発に適しています。

于 2009-07-09T23:49:41.163 に答える
0

mod_fcgid で Apache を使用します。私はそれが起こっていることを発見しました

$ touch ${MYAPP}/tmp/restart.txt

アプリをリロードするたびに機能します。

于 2011-10-12T15:46:23.533 に答える