推荐用于 Rails 3.1 和 Ruby 1.9.2 的开发 Web 服务器
Posted
技术标签:
【中文标题】推荐用于 Rails 3.1 和 Ruby 1.9.2 的开发 Web 服务器【英文标题】:Recommended development web server for Rails 3.1 and Ruby 1.9.2 【发布时间】:2011-11-22 09:36:56 【问题描述】:我已经成功地将 Mongrel 用于 rails 2.* 和 3.0* 开发,以及 ruby 1.8.7。
我最近开始使用 Rails 3.1 和 ruby 1.9.2。我让我的测试应用程序在 WEBrick 上运行。我不喜欢WEBrick。如果我忘记并简单地关闭 WEBrick 终端窗口而不是进入窗口并向 WEBrick 发出 Control-C,则服务器端口 (3000) 将保持使用状态,并且在我注销之前我无法再次运行“rails server”一切并让WEBrick从端口表中清除。 Mongrel 从来没有遇到过这个问题。
我确实遇到了 Mongrel 和 ruby-1.9.2 的构建问题。我在构建中获得了多个头文件,一些引用 ruby-1.9.1 和一些 ruby-1.9.2。真是一团糟。
我的配置推荐的开发 Web 服务器是 32 位 Ubuntu Natty with Rails 3.1 和 ruby 1.9.2?
【问题讨论】:
您真的想要解决 WEBrick 问题(这是答案正在尝试)、Mongrel 构建问题(需要更多信息)或一般“购物推荐”(其中会因为没有建设性而被关闭)? 【参考方案1】:感谢各种端口监听kill命令,我会构造一些简单的东西来清除WEBrick的烦人习惯,并继续使用它。关注开发 Web 服务器问题在我的优先级列表中很低;他们应该工作。
从我的问题可以看出,我的 Linux 技能并没有深入内核。
【讨论】:
我发现保持窗口打开以检查输出非常有用。特别是如果它在单独的计算机/显示器上。【参考方案2】:Webrick 很适合我。我遇到的唯一问题是它不适用于 https 安全。解决方案是只在登台和生产上运行 https,而不是在开发机器上运行。
我只使用开发机器作为服务器,并在Windows机器上使用记事本++进行开发。在使用了糟糕的 Rails IDE 之后,我认为它运行良好。 (我以前用过Visual Studio,很喜欢。)通过本地IP和端口访问网页。对于 Windows 用户来说,这是一种廉价、快速、简单的解决方案。
我正在运行 Ubuntu 11.04、Rails 3.07、带有 RVM 的 Ruby 1.92 和 PostgreSQL。 RVM 应该让 Ubuntu 用户的生活更轻松,因为 Ubuntu 使用不同版本的 Ruby。
杀死运行在 3000 端口的服务器进程:xxxx 是第一行返回的值。
$ lsof | grep 3000
$ kill -9 xxxx
这可以很容易地组合成一行或别名killserver
或类似的。
【讨论】:
很有趣,但请问my output is a list,您如何轻松地将其放入脚本中? 有趣。我的结果只有 1 行。你是在 3000 端口上运行远程桌面还是其他东西? 我不知道那个命令,我在服务器(ubuntu)的同一台机器上,杀死服务器后列表仍然很长......我明天在我的笔记本电脑上试试我会看到的。pkill
比我们现在做的要容易得多......最终它会杀死控制台以上是关于推荐用于 Rails 3.1 和 Ruby 1.9.2 的开发 Web 服务器的主要内容,如果未能解决你的问题,请参考以下文章
如何避免将魔术编码注释放在 Ruby 1.9 中每个 UTF-8 文件的顶部?