An error occurred while executing error-presenter

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
mordare
Začátečník | 117
+
0
-

Nazdar lidi mám takový menši projekt. na localu my v klidu funguje. když sem ho přehrál na web tak už ne. vyhodími to Error500 a v logu je laděnka s výpisem An error occurred while executing error-presenter když sem skusil v bootstrapu zakomentovat řádek //$application->errorPresenter = 'Error'; tak v laděnce zakomentovaný vůbec neni. Prosím poradíte někdo jak to spravit?

Filip Procházka
Moderator | 4668
+
0
-

Pro začátek nám ukaž ErrorPresenter a bootstrap.php.

mordare
Začátečník | 117
+
0
-

Pardon zapoměl sem :)

$params['libsDir'] = dirname(__FILE__) . '/../libs';
require $params['libsDir'] . '/Nette/loader.php';


// Enable Nette Debugger for error visualisation & logging
NDebugger::$logDirectory = dirname(__FILE__) . '/../log';
NDebugger::$strictMode = TRUE;

NDebugger::enable(NDebugger::DEVELOPMENT);


// Load configuration from config.neon file
$configurator = new NConfigurator;
$configurator->container->params += $params;
$configurator->container->params['tempDir'] = dirname(__FILE__) . '/../temp';
$container = $configurator->loadConfig(dirname(__FILE__) . '/config.neon');

dibi::connect(NEnvironment::getConfig('database'));
// Setup router
$router = $container->router;
$router[] = new NRoute('index.php', 'Homepage:default', NRoute::ONE_WAY);
	$router[] = new NRoute('<module administration>/<presenter>/<action>/<id>', array(
	/*'module' => 'Ad',*/
	'presenter' => 'Sign',
	'action' => 'in',
	'id' => NULL,
));

	$router[] = new NRoute('<module front>/<presenter>/<id>', array(
	'module' => 'Front',
	'presenter' => 'Homepage',
	'action' => 'default',
	'id' => NULL,
));


// Configure and run the application!
$application = $container->application;
//$application->catchExceptions = FALSE;
//$application->errorPresenter = 'Error';
$application->run();

a error presenter sem neměnil a je normal ze skeletonu

class ErrorPresenter extends BasePresenter
{

	/**
	 * @param  Exception
	 * @return void
	 */
	public function renderDefault($exception)
	{
		if ($this->isAjax()) { // AJAX request? Just note this error in payload.
			$this->payload->error = TRUE;
			$this->terminate();

		} elseif ($exception instanceof NBadRequestException) {
			$code = $exception->getCode();
			$this->setView(in_array($code, array(403, 404, 405, 410, 500)) ? $code : '4xx'); // load template 403.latte or 404.latte or ... 4xx.latte

		} else {
			$this->setView('500'); // load template 500.latte
			NDebug::log($exception, NDebug::ERROR); // and log exception
		}
	}

}
Filip Procházka
Moderator | 4668
+
0
-

Budeš se must trochu potrápit a odladit to nějak, protože já tam chybu nevidím :)

Máš zapisovatelné složky temp/ a log/?

hAssassin
Člen | 293
+
0
-

asi uplna blbost, ale psal jsi, ze si zkusil zakoment radek v boostrapu. Nahral jsi pak ten upraveny bootsrap znovu na server? (za predpokladu ze jsi to upravil u sebe na localu)

mordare
Začátečník | 117
+
0
-

Ano temp i log je zapisovatelný a na server sem nahrál. skoušel sem to tam nahrávat několikrát.

mordare
Začátečník | 117
+
0
-

Tak a tohle vlákno můžeme zařadit do rubriky zázraky. Po té co sem to „X“ krát nahrál a smazal a furt to nejelo sem smazal celý projekt a nahrál ho znovu. poté sem zakomentoval ten řádek s error presenterem a jede to. Ale i tak děkuju