Autor Zpráva
Scorpio1337
Profil *
Dobrý den.
Nechápu proč, ale když dám načíst web co právě tvořím validátorem, seo-servisem nebo i webtools googlem, tak mi načte místo webu error 500. Web se ale v prohlížeči zobrazuje úplně normálně.
Viz:
http://tradiceslovacka-eshop.cz/
a
http://validator.w3.org/check?uri=http%3A%2F%2Ftradiceslovacka-eshop.cz%2F&charset=%28detect+automatically%29&doctype=Inline&ss=1&group=0&user-agent=W3C_Validator%2F1.767

Metodou pokus omyl jsem zjistil, že je to f-cí ob_start(). Když ji smažu, tak se načte všechno v pohodě. Bohužel ji nemůžu odstranit, protože je pro chod celého systému velice důležitá.
Sice nechápu, jak může f-ce, která by se neměla na výstupu vůbec objevit, ovlivnit něco takovýho, ale je to tím.

Nevíte prosím proč to dělá a jak to opravit?
Děkuji za odpověď.
Joker
Profil
Scorpio1337:
Web se ale v prohlížeči zobrazuje úplně normálně.
Prohlížeč taky dostane (podle Opera Dragonfly) hlavičku 500 Internal server error. Jen ji, na rozdíl od validátoru W3C, přejde.
Naproti tomu třeba Chamurappiho validátor sice zobrazí upozornění na chybu 500, ale obsah stránky přesto zvaliduje.

Zajímavé, že ostatní soubory (obrázky, styly a skript nahled.php) posílají hlavičky správné.

Nevíte prosím proč to dělá a jak to opravit?
No, "Internal server error" znamená "Nastala chyba někde na serveru", což je poněkud obecné.
Chtělo by to prozkoumat chybové logy na serveru a zjistit jaká chyba přesně nastala.
Scorpio1337
Profil *
No ona to ruší nějak ta f-ce ob_start();
Tady tohle
http://validator.w3.org/check?uri=http%3A%2F%2Ftradiceslovacka-eshop.cz%2Fzkouska.php&charset=%28detect+automatically%29&doctype=Inline&group=0&user-agent=W3C_Validator%2F1.767
Obsahuje jenom kód:
<?
ob_start();
echo "ahoj";
ob_flush_end();
?>


a tohle je to samé, akorát bez toho ob:
http://validator.w3.org/check?uri=http%3A%2F%2Ftradiceslovacka-eshop.cz%2Fzkouska2.php&charset=%28detect+automatically%29&doctype=Inline&group=0&user-agent=W3C_Validator%2F1.767

<?
echo "ahoj";
?>


Moderátor Majkl578: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
Chamurappi
Profil
Reaguji na Scorpia1337:
Spíš než validátor by tě měly trápit vyhledávače, protože ty nebudou chybovou stránku indexovat.
Kajman_
Profil *
Scorpio1337:
Zkuste napsat ob_end_flush místo ob_flush_end.
Scorpio1337
Profil *
No, právě že mě trápí vyhledávače. x D. Ten validátor říkám jen abych to měl jak ukázat. :-).

S tím ob_end_flush -> Moje chyba. :-). Ale stejně to nejde.
Kajman_
Profil *
Nepoužíváte editor, který na začátek cpe BOM, že je to v utf8?

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0