我正在尝试学习一点Ruby。我已经在我的 Ubuntu 机器上安装了 Ruby,我正在使用 apache。一切正常,除了刷新视图我必须在控制台中重新启动 apache 然后按 ctrl-r,只需按 ctrl-r 不会刷新浏览器。
显然有一些缓存正在进行,但它必须是这样,即它是 Ruby on Rails 固有的吗?我试过用谷歌搜索,但似乎唯一的答案是安装一些冗长的例程。对于开发来说,这似乎是一条相当乏味的路。
我正在尝试学习一点Ruby。我已经在我的 Ubuntu 机器上安装了 Ruby,我正在使用 apache。一切正常,除了刷新视图我必须在控制台中重新启动 apache 然后按 ctrl-r,只需按 ctrl-r 不会刷新浏览器。
显然有一些缓存正在进行,但它必须是这样,即它是 Ruby on Rails 固有的吗?我试过用谷歌搜索,但似乎唯一的答案是安装一些冗长的例程。对于开发来说,这似乎是一条相当乏味的路。
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
不要将 apache 用于开发模式。使用脚本/服务器并安装 mongrel gem (sudo gem install mongrel)。Mongrel 比 WEBrick 更快,并将开发日志转储到运行它的控制台。它使发展体面。
在 Rails 之类的情况下,Apache 不是一个好的开发选择,因为您确实需要在每次更改代码时重新启动服务器。Rails 附带了自己的开发服务器,您可以通过执行 (IIRC) 脚本/服务器来开始。它更适合开发,因为它不需要在每次小改动后重新启动。
我将 Apache 与Passenger(又名modrails)一起用于开发目的,它在这里运行良好。只需通过在 httpd.conf 中设置“RailsEnv development”来确保在开发模式下使用 Rails。
我将 Apache 与 mod_fcgid 一起使用。我发现去
$ touch ${MYAPP}/tmp/restart.txt
每次我想要重新加载应用程序时都对我有用。