我正在尝试将一个Sinatra应用程序部署到Dreamhost,它说如下:
Since DH supports Passenger,which in
turn supports Rack-based ruby
applications,DH does indeed support
Sinatra.
我难以解析这个说法 – 机架和乘客有什么区别(为什么是Sinatra“Rack”)?
解决方法
Rack是一个用于Web服务器的
standardized API,用于与Ruby中的中间件和Web框架进行交互.
Phusion Passenger是一个实现Rack API的Apache模块.
Sinatra是一个构建了
on top of the Rack API的Web框架,因为Dreamhost支持Phusion Passenger,这意味着它支持Rack,因此支持Sinatra.