ruby - 乘客/Apache 使用 send_file 下载空文件
问题描述
我在这里看到过类似的问题,但目前没有一个能解决我的问题。有一个使用 send_file 下载简单 PDF 的 Ruby 应用程序,但是当 PDF 被“下载”时,它具有正确的文件名,但为 0 字节。我在 Apache 配置中打开了调试日志记录,并且没有相关错误。该应用程序在乘客上运行。
目前,我在 vhost 配置中有:
XSendFile On
XSendFilePath /var/www/
(正在从 /var/www 的子文件夹下载文件)。应用程序本身通过 capastrano 部署,并从发布文件夹链接到“当前”。所以它是 /var/www/$user/current/$filedir
在 production.rb 中,它不适用于已注释或未注释的“config.action_dispatch.x_sendfile_header”。
Ruby 代码只是运行:
send_file fn
其中 fn 是文件位置的完整路径。它用于指定 MIME 类型,但由于它无论如何都不起作用,因此被注释掉了。
解决方案
推荐阅读
- java - Java 中的 System.out.write() - 不打印整数值的最低有效位
- paypal - PayPal Checkout.js 函数数据与操作变量?
- java - 将代理数据设置为 Spring SOAP Web 服务模板
- activemq - ActiveMQ 可能还没有准备好。服务正在部分运行
- java - 新值 EditText 未显示,没有任何错误
- python - discord.py 使用 json 的调平系统。如何将这些东西添加到我的代码中?
- java - HttpMethodBase 与 HttpRequestBase
- c# - Deserializing xml returns zero elements
- css - Wordpress Woocommerce 主题的标题不像原始演示那样透明
- mongodb - 通过查询将数组对象中的键值获取到mongodb和mongoose中的数组