从Lighttpd响应中删除Content-Type标头

时间:2016-10-22 13:22:59

标签: php lighttpd

我编写了一个名为IO :: stdout:

的函数
class IO {
      public static function stdout($var) {
          $stdout = fopen('php://stdout', 'w');
          fwrite($stdout, $var, strlen($var));
          fclose($stdout);
      }
}
IO::stdout("Hello World!");

嗯,它有效!但是当我请求页面时,它会显示我:

Hello World!
X-Powered-By: PHP/5.6.13
Content-type: text/html; charset=UTF-8

在php.ini中设置expose_php = Off删除了X-Powered-By标头,但仍然打印了Content-Type标头。它可能是由Lighttpd添加的。如何禁用Content-Type标题?

1 个答案:

答案 0 :(得分:2)

这是默认的PHP标头:http://php.net/manual/fr/ini.core.php#ini.default-mimetype

您无法使用header_remove删除它,因为缺少Content-Type标头会触发默认的mime类型。

相反,尝试将其设置为空字符串:

header('Content-Type:', true);

true将删除之前的任何类似标题。

只是为了记录,标题的名称不区分大小写,并且已知PHP使用Content-type发送t

此外,您可以发送权限Content-Type(我认为应该是text/plain)。