ETag标头不是从PHP发送的

时间:2011-07-20 20:15:54

标签: php apache etag

我正在运行PHP 5.3.2和Apache 2.2.14。使用header(),如果我发送“ETagx”,我会在响应中获得标题,但如果我发送“ETag”,正确的标题名称,我什么也得不到。

header('ETagx: "33653a-4831d8249af80"')

有效,而

header('ETag: "33653a-4831d8249af80"')

没有。 php.ini或任何可能影响此配置文件的Apache配置文件中是否有配置选项?

2 个答案:

答案 0 :(得分:1)

刚刚在PHP 5.3和Apache 2.4上测试过,它对我有用。

确保Apache不要像这样取消你的Etag:

<IfModule mod_headers.c>
  Header unset ETag
</IfModule>

FileETag None

答案 1 :(得分:1)

当我Charles HTTP Proxy激活“无缓存”时,我复制了这种情况。选项已启用 - HTTP代理正在删除ETag和其他与缓存相关的标头。如果使用代理查看标头,请确保为特定请求启用了缓存。