404, vlastna stranka

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
newPOPE
Člen | 648
+
0
-

Ahoj,

je mozne nejak smerovat poziadavky ktore neexistuju na vlastnu 404 resp na ErrorPresenter?

Riesim to ale ErrorPre… nezabera.

mam nastaveny

$application->errorPresenter = „Error“;

vytvoreny ErrorPresenter ale Ladenka aj tak hodi BadRequestException #404 a to ze napr. neexistuje prislusna sablona.

PaBi3
Bronze Partner | 62
+
0
-

Ladenka ti radí správne. Chýba ti šabĺóna pre ErrorPresenter. Musíš ju vytvoriť klasicky ako pre každé iné presentery. Rovnako ako sa vytvárala napríklad tu.

vlki
Člen | 218
+
0
-

Myslím, že ErrorPresenter bude mít nastavený dobře.
Důvod takového nedorozumění je ten, že jsi ve vývojovém módu. V tom se implicitně takové výjimky vyhazují, aby jsi je mohl analyzovat. V produkčním by ti to fungovalo pravděpodobně dobře.

Zkus tedy nastavit prostředí na produkuční

// začátek bootstrapu
Environment::setMode('production', TRUE);

nebo zachytávat výjimky, aby jsi to viděl.

// v bootstrapu před voláním run
$application->catchExceptions = TRUE;
newPOPE
Člen | 648
+
0
-

vlki napsal(a):

Myslím, že ErrorPresenter bude mít nastavený dobře.
Důvod takového nedorozumění je ten, že jsi ve vývojovém módu. V tom se implicitně takové výjimky vyhazují, aby jsi je mohl analyzovat. V produkčním by ti to fungovalo pravděpodobně dobře.

Zkus tedy nastavit prostředí na produkuční

// začátek bootstrapu
Environment::setMode('production', TRUE);

nebo zachytávat výjimky, aby jsi to viděl.

// v bootstrapu před voláním run
$application->catchExceptions = TRUE;

Presenter aj sablonu mam.

skusal som aj ten produkcny mod, v nom ziadny vystup. ErrorPresenter nezareaguje, skusal som pomocou nejakeho echa. jedine echo co mi vypise je v BasePresenteri ktory zdedi Error…

pokial dam catchExcetpions = true tak len Server Error…

_Martin_
Generous Backer | 679
+
0
-

newPOPE napsal(a):

skusal som aj ten produkcny mod, v nom ziadny vystup. ErrorPresenter nezareaguje, skusal som pomocou nejakeho echa. jedine echo co mi vypise je v BasePresenteri ktory zdedi Error…

pokial dam catchExcetpions = true tak len Server Error…

  1. Máš nastavené Debug::enable(Debug::PRODUCTION);?
  2. Ona „Server error“ je chyba Apache a nebo jde o tuhle chybu (lze zjistit editací přísušné hlášky v souboru frameworku)?

Pokud by 2) byla hláška frameworku znamená to, že došlo k chybě při spouštění error presenteru – takže musí být nějaká chyba v něm.

ericsko
Člen | 2
+
0
-

Mam tento isty problem. Uz sa ti to podarilo vyriesit?
Hadze mi to server error s podpisom Nette Framework.
Error presenter aj sablonu som pouzil zo skeletonu. A nejde. :(

Editoval ericsko (7. 10. 2009 0:08)

Tomik
Nette Evangelist | 485
+
0
-

ericsko napsal(a):

Mam tento isty problem. Uz sa ti to podarilo vyriesit?
Hadze mi to server error s podpisom Nette Framework.
Error presenter aj sablonu som pouzil zo skeletonu. A nejde. :(

Chyba bude pravděpodobně v Error presenteru, např. používáš nějaký starý ze starého skeletonu. Zkus se podívat do adresáře log, zda tam nebude nějaký soubor .html, pokud ano, pak se koukni na část Caused by:.

ericsko
Člen | 2
+
0
-

Vdaka, ten log pomohol.. Ono mi to volalo tovarnicku z base presentera, tam sa mi to trosku po.. ;)