Autor Zpráva
*Čvachta*
Profil *
Ahoj, mám funkci na přesměrování na chybovku - pokud se článek v db nenajde odkážu uživatele na chybovku.

Jde mi o to, aby byla poslána hlavička 404, už jenom kůli vyhledávačům.

header('HTTP/1.1 404 Not Found');
header('Location: error.php');
exit;

Tohle mi ale vrací 302... jak to vyřešit?
llook
Profil
Myslím, že při přesměrování lze použít jenom třístovkové kódy, ale jistý si tím nejsem. Každopádně i samotný Apache, pokud mu pro chybovku navolíme URL, tak přesměrovává s kódem 302.

Lepší bude header('HTTP/1.0 404 Not Found'); require('error.php');
*Čvachta*
Profil *
llook

Jo, to bylo nejlepší, dát za to pak exit; a je to.

Jinak pro apache mám navolenou chybovku a posílá to s 404.
llook
Profil
Pokud se u Apache jako chybovka nastaví soubor:
ErrorDocument 404 /chyba.php
pak to ten soubor provede normálně bez přesměrování a posílá 404, ale když se zadá URL:
ErrorDocument 404 http://localhost/chyba.php
tak to na tu URL přesměrovává a s kódem 302.
Toto téma je uzamčeno. Odpověď nelze zaslat.