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/

Odpowiedź listem elektroniczym