我正在尝试学习一点Ruby。我在我的Ubuntu机器上安装了Ruby,我使用的是apache。一切正常,除了刷新视图我必须在控制台中重启apache然后点击ctrl-r,只需按ctrl-r就不会刷新浏览器。
显然有一些缓存正在进行,但是它必须是这样的,即它是Ruby on Rails固有的吗?我尝试使用Google搜索,但似乎唯一的答案是安装一些冗长的例程。对于开发而言,这似乎是一种非常繁琐的方式。
答案 0 :(得分:5)
Apache是开发的绝佳选择。
只需安装Passenger(mod_rails)...并按照说明操作......
我为每个站点设置了它,以便/ etc / hosts包含
127.0.0.1 myapp
我使用带有类似条目的Apache虚拟主机 - 在/ etc / apache2 / sites-available / myapp
<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
答案 1 :(得分:3)
不要将apache用于开发模式。使用脚本/服务器并安装mongrel gem(sudo gem install mongrel)。 Mongrel比WEBrick更快,并将开发日志转储到运行它的控制台。它使发展得体。
答案 2 :(得分:0)
在Rails这样的情况下,Apache不是开发的好选择,因为每次更改代码时都需要重新启动服务器。 Rails附带自己的开发服务器,您可以通过执行(IIRC)脚本/服务器来启动它。它更适合开发,因为它不需要在每次变化后重新启动。
答案 3 :(得分:0)
我正在使用Apache与Passenger(又名模型)进行开发,它在这里运行良好。通过在httpd.conf中设置“RailsEnv development”,确保在开发模式下使用Rails。
答案 4 :(得分:0)
我将Apache与mod_fcgid一起使用。我找到了
$ touch ${MYAPP}/tmp/restart.txt
每次我想重新加载的应用程序都适合我。