【问题标题】:"Content-Type:text/plain" forces to download the file"Content-Type:text/plain" 强制下载文件
【发布时间】:2011-12-14 04:43:42
【问题描述】:

如果我调用header('Content-Type:text/plain; charset=ISO-8859-15');,浏览器将下载文件而不是显示它。使用 text/html 代替。 (下载的文件无论如何都会处理,不是下载源代码)

我尝试添加header('Content-Disposition:inline;');,但它被忽略了。

我对可能导致此问题的原因一无所知,有什么提示吗?

服务器是 MAMP 1.9.6 (PHP 5.3.5, Apache/2.0.64)。

编辑:这只发生在 Chrome 上,它适用于 Firefox、Camino 和 Safari。

【问题讨论】:

  • 是什么浏览器?我很确定 IE 在遇到image/*text/html 以外的任何内容时会提示下载。这就是下载而不是显示 javascript/css 文件的原因。
  • 奇怪,没见过(也无法重现):(
  • @rudi_visser:你在正确的轨道上:它适用于 Firefox、Camino 和 Safari。看起来这是Chrome的错。如果有人知道解决方法,我会尝试,否则我会回到 text/html :/

标签: php google-chrome http-headers mime-types content-type


【解决方案1】:

我无法用这个脚本重现这个:

<?php

  header('Content-Type:text/plain; charset=ISO-8859-15');
  echo "This is some text";

但是,我可以用这个来重现它:

<?php

  header('Content-Type:text/plain; charset=ISO-8859-15');
  echo "\x00This is some text";

确保您的内容实际上纯 ASCII 文本...

【讨论】:

  • 就是这样,我猜。我认为即使有控制字符,浏览器也会尝试显示它。看来我猜错了。
【解决方案2】:

对我来说这是可行的:

header('Content-Type:text/javascript;');

【讨论】:

    猜你喜欢
    • 2010-11-27
    • 1970-01-01
    • 1970-01-01
    • 2017-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-31
    相关资源
    最近更新 更多