#25204 [Opn->Fbk]: ETag Responce Header Ignored
| From: | sniper@php.net | Date: | Fri, 22 Aug 2003 08:21:39 +0000 |
| Subject: | #25204 [Opn->Fbk]: ETag Responce Header Ignored | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-46472@lists.php.net to get a copy of this message | ||
ID: 25204
Updated by: sniper@php.net
Reported By: support at inmarket dot lviv dot ua
-Status: Open
+Status: Feedback
-Bug Type: HTTP related
+Bug Type: Apache related
PHP Version: 4.3.2
New Comment:
Please try using this CVS snapshot:
http://snaps.php.net/php4-STABLE-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php4-win32-STABLE-latest.zip
Also, what is in your script?
Which apache version?
How did you configure PHP?
Previous Comments:
------------------------------------------------------------------------
[2003-08-22 02:47:54] support at inmarket dot lviv dot ua
Description:
------------
Actually I posted this bug to Apache, but they said this is PHP bug.
I noticed that ETag responce header from PHP script is simply ignored.
If there comes a request with "If-None-Match" and the script responds
with "ETag" that matches it, the server responds with "200 OK" status.
When checked with static content, Apache has no problem responding with
"304 Not Modified".
There is no problem when script responds with "Last-Modified", and the
server then ends up with "304 Not Modified".
What I got from Apache bug report system:
This is a php bug. The handler (read: PHP) is responsible for calling
ap_meets_conditions at the proper place (i.e. before sending the
content) or
doing the evaluation that takes place there itself.
Please address this issue to the php bug database.
Regards,
Dennis
Reproduce code:
---------------
Request:
GET /temp/etag.php HTTP/1.1
If-None-Match: "0-1234-12345678"
Responce:
HTTP/1.1 200 OK -- should be 304 as for static content is
ETag: "0-1234-12345678"
Whereas using time-related headers:
Request:
GET /temp/etag.php HTTP/1.1
If-Modified-Since: Thu, 31 Jul 2003 19:12:11 GMT
Responce:
HTTP/1.1 304 Not Modified -- as expected
Last-Modified: Thu, 31 Jul 2003 19:12:11 GMT
Also combining two kinds of headers is useless:
Request:
GET /temp/etag.php HTTP/1.1
If-None-Match: "0-1234-12345678"
If-Modified-Since: Thu, 31 Jul 2003 19:12:11 GMT
Responce:
HTTP/1.1 200 OK -- Note this happens despite Last-Modified!
ETag: "0-1234-12345678"
Last-Modified: Thu, 31 Jul 2003 19:12:11 GMT
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=25204&edit=1