Přesun aplikace na hosting – error_log() has been disabled for security reasons

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

Ahoj, pokračování problému odsud:
https://forum.nette.org/…ve-struktury

Aplikaci jsem tedy opět nahrál na ebolu a končím na

Warning
error_log() has been disabled for security reasons

Checker měl jediná dvě upozornění:
Memcache extension Disabled
Fileinfo extension or mime_content_type() Disabled

nanuqcz
Člen | 822
+
0
-

Ahoj, předpokládám, že ti ta chyba ukazuje na tento řádek? S tím asi nic neuděláš, kromě zakomentování toho řádku přímo v kódu Nette.
(EDIT: Anebo laděnku nemusíš používat. To ale asi nechceš :-))

Ale určitě bych napsal na podporu hostingu, protože zakazovat tohle je podle mě blbost. Už jen proto, že to pak dělá problémy nejoblíbenějšímu českému PHP frameworku :-)

Editoval nanuqcz (24. 3. 2012 11:31)

Stevie
Člen | 18
+
0
-

Ahoj, no odkazuje mne to (teď zrovna) do bootstrapu na ř. 52.

48: // Configure and run the application!
49: $application = $container->application;
50: //$application->catchExceptions = TRUE;
51: $application->errorPresenter = ‚Error‘;
52: $application->run();

ještě před chvílí mě to odkazovalo do ErrorPresenteru někam sem:
$this->setView(‚500‘); // load template 500.latte
Debugger::log($exception, Debugger::ERROR); // and log exception

Jinak teda verzi nette nemám úplně final, ale poslední dev před tou finální 2.0 (asi z půlky prosince)…ErrorPresenter jesm přikopíroval z final sandboxu předvčírem když na mě laděnka na hostingu řvala, že jí chybí ErrorPresenter. Takže je možný že něco nefunguje jak má.
Na localhostu mi ale celá aplikace funguje v tomhle stavu v podstatě bezchybně.

nanuqcz
Člen | 822
+
0
-

Jej sry, přehlídl jsem se a spletl si error_log a error_reporting.

Takže buď se pohádat s hostingem, ať ti funkci error_log povolí, anebo si implementovat vlastní Logger (tak, aby nepoužíval funkci error_log), a pak ho v bootstrapu nastavit:

Debugger::$logger = new MyLogger();
Stevie
Člen | 18
+
0
-

Ha, zdá se to vyřešilo po tom co jsem výslovně do bootstrapu napsal
$application->catchExceptions = FALSE;

Jan Endel
Člen | 1016
+
0
-

Což není moc bezpečné, teď každý návštěvník, který na tvém webu způsobí nějakou chybu uvidí laděnku a ty se o ní ani nedovíš.

Stevie
Člen | 18
+
0
-

No to samozřejmě, už mám v podstatě vyladěno, jakmile to dodělám, laděnky se zbavím. Laděnku jsem na hostingu teď chtěl pro vychytání nedodělků (abych to vůbec rozjel).
Jinak děkuju za připomínky a pomoc.