2

我认为我在这里有点傻,但我不断收到错误,抱怨 env 哈希中缺少 SERVER_NAME 键,而且我在 Rack::SendFile.. 上找不到任何实质性文档。

所以-我如何提供文件?

4

1 回答 1

0

如果您要提供大文件以供下载,我建议让网络服务器提供大数据。这样,您就不会浪费宝贵的资源来运行您的 Rack 应用程序,只是为了让用户进行长时间的下载。

如果您使用特殊的 Header 响应(X-Sendfile对于 Apache,X-Accel-Redirect对于 Nginx),网络服务器将使用给定文件的内容作为响应的正文。这样一来,您的 Rack 应用程序就可以为下一个请求做好准备,而网络服务器则负责将数据发送给用户的冗长过程。您可能需要先为您的网络服务器启用此功能。

于 2011-05-31T10:53:54.123 回答