On Mon, 2006-12-18 at 12:13 +0100, Wojciech 'arab' Arabczyk wrote:
> > Czy to tak działa (ogólnie):
> > 1. wchodzimy na stronę
> > 2. apache dostaje 404 i kieruje nasz na index.php
> > 3. parsujemy url i wyświetlamy (lub nie) to co trzeba
> > 4. przeglądarka widzi, że wszystko jest ok.
>
> Dokladnie, poniewaz w php obsluga wyjatku wylapuje przekierowanie
> i przed podaniem jakiejkolwiek tresci na strone wysyla naglowek
> header("HTTP/1.1 200 OK");
Czyli wysyła to, co powinno się znaleźć w "Status-line" jako jeden z
nagłówków HTTP. Ten header nazywa się "Status", szukałem w rfc, ale nie
znalazłem :(
http://www.w3.org/Protocols/rfc2616/rfc2616.txt
BTW sprytny hack. Teraz już rozumiem dlaczego niektórzy zgodni z
protokołem klienci HTTP odmawiają współpracy. :)
A to mój trace:
http://www.szluug.org/article.id_14
GET /article.id_14 HTTP/1.1
Host: www.szluug.org
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1)
Gecko/20061024 Iceweasel/2.0 (Debian-2.0+dfsg-1)
Accept: text/xml,application/xml,application/xhtml
+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://www.szluug.org/
Cookie: PHPSESSID=30b7947db2995cc98c2c1a4533a760c8
HTTP/1.x 404 Not Found
Date: Mon, 18 Dec 2006 21:57:51 GMT
Server: Apache
X-Powered-By: PHP/4.4.4-pl4-gentoo
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0,
pre-check=0
Pragma: no-cache
Status: 200 OK
Keep-Alive: timeout=30
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html
--
"Meaning is differential not referential"
Kazimierz Pogoda
Nordic Consulting & Development Company http://www.ncdc.pl/