我知道这可能是一个愚蠢的问题。但是我用Sinatra框架创建了一个.rb文件,我不知道如何部署"它。当我在服务器上发布文件时,我只得到一个简单的文本文件来回读我的代码。当我和Sinatra一起运行它时效果很好。
提前致谢!
答案 0 :(得分:1)
看起来您的Web服务器(Apache?)只是使用您的Ruby脚本(即文本,ASCII文件)提供,而不是运行它(是:而不是通过Ruby解释器传递它。)
因此:
无论如何,Ruby应用程序(Rails,Sinatra,Padrino)通常使用GIT部署到服务器。看看Heroku和Engine Yard。
此外,还有一些专门用于帮助开发人员部署Ruby应用程序的工具。请查看Capistrano或Vlad和/或Google的“如何部署sinatra应用程序”。
答案 1 :(得分:1)
对于Sinatra / Rails / etc,大多数人使用Web服务器(即Apache,Nginx等)和应用服务器(Thin,Passenger,Unicorn)。对于一个简单的应用程序,它们可以存在于同一主机上Web服务器管理传入流量,应用程序服务器执行ruby代码并将结果传递给Web服务器。
执行ruby app.rb
运行Sinatra应用程序时,实际上是在加载WEBrick,它是一个应用程序服务器。由于您的开发计算机是本地计算机,因此您可以直接在localhost:3000
或类似地址访问它。
查看有关使用Thin设置网络服务器的教程,这是一个比较容易使用的工具。如果/如果你长大了,那么看看Unicorn。