代码之家  ›  专栏  ›  技术社区  ›  Marcos Marin

在Apache中设置标题

  •  0
  • Marcos Marin  · 技术社区  · 15 年前

    我尝试在Django应用程序中为下载提供静态文件,我发现我将静态文件放在/media/files中,并让Apache将Content-Type头设置为application/octet-stream(要下载的文件将是Word文件,但稍后我将了解详细信息)。

    为此,我激活了mod_头文件,然后在apache配置中执行了以下操作:

    <Location "/media/files">
        Header set Content-Type "application/octet-stream"
    </Location>
    

    这样做之后,我重新启动了Apache并尝试了一个示例文件,但它不起作用,我仍然得到了内容类型中的文本/纯文本,并且浏览器不会提示我下载任何内容。

    顺便说一句,我知道建议对静态文件使用不同的Web服务器,但是我对要部署的服务器没有太多控制权,它必须是带有mod_python的Apache。

    1 回复  |  直到 15 年前
        1
  •  1
  •   MarkusQ    15 年前

    可能有很多问题(需要比您提供的更多信息来跟踪一些Apache配置问题),但这里有一些想法:

    • 您确定这段代码是否被应用到正确的文件中(例如,如果有多个虚拟服务器,而您将其固定在错误的文件中,那么……
    • 您是否正在进行重写,以防止将此视为匹配项?
    • 是否在其他地方设置内容类型头?
    • 你们有内容仲裁吗?根据情况,这可能会覆盖您在头中所做的任何操作。

    您可以尝试添加一些其他头文件,看看它是否返回。另外,尝试自己用telnet或elsewise执行请求,减少您和服务器之间的事务数。使用日志文件。他们是来帮你的。祝你好运。