编程语言
首页 > 编程语言> > php-如何禁用Apache的Content-Length响应标头?

php-如何禁用Apache的Content-Length响应标头?

作者:互联网

让我在开始这个问题时先声明一下,我只想暂时禁用标头,并且如果标头不存在,则完全了解对浏览器,缓存机制等的影响.

当HTTP响应中没有Content-Length标头时,我需要测试一些缓存行为.有没有一种方法可以禁用标题?

我的第一次尝试是简单地尝试使用PHP和header(“ Content-Length:0”,true);将其设置为0.但这与从响应中完全删除标头不同.

是否可以禁用/删除标题?

解决方法:

添加Content-Length是RFC 2616(HTTP 1.1)中标记为应该的内容.这意味着Web服务器通常设计为不遗漏它.

例如,对于Apache HTTP Server,您必须修改modules / http / http_filters.c.从源文件中搜索Content-Length实际上显示了如何强行取消设置(请仔细看一下1255行).只需将unset添加到过滤器链的末尾即可完成设置.

您的另一种选择是使用Apache以外的其他Web服务器,该Web服务器要么更易于修改,要么也不遵循RFC 2616.

标签:apache,http-headers,php
来源: https://codeday.me/bug/20191208/2093912.html