Pár postřehů začátečníka
- xzajic
- Člen | 19
Tak jsem se jako úplný laik pokusil „osedlat“ NETTE, a narazil jsem na pár drobností. Podělím se, třeba to někomu pomůže, nebo s tím David něco udělá, aby uetřil práci ostatním začínajícím:
- Perzistentní parametry: Víme, je o to řeč tady: https://forum.nette.org/…-bez-anotaci
Jenže v příkladech (jako je třeba akrabat.forms) se vesele používají anotace, ke zděšení všech, co mají na serveru eAccelerator (a třeba o tom ani netuší). Chyba se hledá dlooooouho.
- A pak jsem měl docela solidní zákys při nahrání na produkční server. Protože ladění jsem měl vypnuté a byla tam nějaká chyba, došlo na řádky
<?php
Debug::processException($e, FALSE);
echo "<title>500 Internal Server Error</title>\n\n<h1>Server Error</h1>\n\n",
"<p>The server encountered an internal error and was unable to complete your request. Please try again later.</p>";
break;
?>
v souboru Application.php.
Jenomže: To, co nebohý vystresovaný kodér uvidí v prohlížeči je natolik podobné chybě, kterou hází Apache (třeba při špatném .htaccessu), že – přiznám se – mě vůbec nenapadlo hledat chybu uvnitř aplikace, ale v konfiguraci serverového prostředí. Proč ta hláška nemůže vypadat tak, aby z ní bylo poznat, že zdrojem problémů je NETTE a ne server?
- Ondřej Mirtes
- Člen | 1536
xzajic napsal(a):
- A pak jsem měl docela solidní zákys při nahrání na produkční server. Protože ladění jsem měl vypnuté a byla tam nějaká chyba, došlo na řádky
<?php Debug::processException($e, FALSE); echo "<title>500 Internal Server Error</title>\n\n<h1>Server Error</h1>\n\n", "<p>The server encountered an internal error and was unable to complete your request. Please try again later.</p>"; break; ?>
v souboru Application.php.
Jenomže: To, co nebohý vystresovaný kodér uvidí v prohlížeči je natolik podobné chybě, kterou hází Apache (třeba při špatném .htaccessu), že – přiznám se – mě vůbec nenapadlo hledat chybu uvnitř aplikace, ale v konfiguraci serverového prostředí. Proč ta hláška nemůže vypadat tak, aby z ní bylo poznat, že zdrojem problémů je NETTE a ne server?
To je právě účel, aby Laděnka nic nevykecala. Že za to může něco v Nette zjistíš podle HTTP hlavičky X-Powered-By, případně si nakonfiguruj Debug v bootstrapu, aby se ti posílal mail. Při existenci složky app/log/ se chyby logují tam.