如何使用rails3中的X-sendfile从公共目录以外的目录启用下载?

时间:2011-04-23 00:05:49

标签: ruby-on-rails-3 apache2 ubuntu-10.04

我在Ubuntu 10.04上运行的Apache 2中启用了XSendFile模块。我添加了XSendFile on指令并成功重新启动了Apache服务器。当我添加XSendFilePath /path/to/dir指令并重新启动Apache时,我收到以下错误:

无效命令'XSendFilePath',可能拼写错误或由未包含在服务器配置中的模块定义

不确定我做错了什么?

2 个答案:

答案 0 :(得分:7)

在10.04 Lucid上,apt默认安装的XSendFile版本为0.9.2:

http://packages.ubuntu.com/lucid/libapache2-mod-xsendfile

指令XSendFilePath在版本0.1.0中替换了XSendFileAllowAbove,因此对于0.9.2:

https://tn123.org/mod_xsendfile/

如果您使用的是小于0.1.0

的任何内容,请尝试使用XSendFileAllowAbove

答案 1 :(得分:3)

您是否在apache中安装并启用了x-sendfile模块?运行“apachectl -M”查看所有模块的列表。您可能需要构建它,请参阅https://tn123.org/mod_xsendfile/