BadRequestException #404 chyba

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

Dobrý den,
mám otázku při zapojení stránky 404 mi web hází chybu :

Nette\FileNotFoundException

File ‚C:\xampp\htdocs\minnesota\app/config.neon‘ is missing or is not readable.

bootstrap.php

<?php

require __DIR__ . '/../vendor/autoload.php';

$configurator = new Nette\Configurator;

$configurator->setDebugMode(TRUE);  // debug mode MUST NOT be enabled on production server
$configurator->enableDebugger(__DIR__ . '/../log');

$configurator->setTempDirectory(__DIR__ . '/../temp');

$configurator->createRobotLoader()
	->addDirectory(__DIR__)
	->addDirectory(__DIR__ . '/../libs')
	->register();

$configurator->addConfig(__DIR__ . '/config/config.neon');
//$configurator->addConfig(__DIR__ . '/config/config.local.neon');

$container = $configurator->createContainer();
return $container;

ErrorPresenter.php

<?php

namespace App\Presenters;

use Nette,
    App\Model,
    Nette\Diagnostics\Debugger;

/**
 * Error presenter.
 */
class ErrorPresenter extends BasePresenter
{

    /**
     * @param  Exception
     * @return void
     */
    public function renderDefault($exception)
    {
        if ($this->isAjax()) { // AJAX request? Note this error in payload.
            $this->payload->error = TRUE;
            $this->terminate();
        } elseif ($exception instanceof \Nette\Application\BadRequestException) {
            $code = $exception->getCode();
            //var_dump($code);
            // load template 403.latte or 404.latte or ... 4xx.latte
            $this->setView(in_array($code, array(403, 404, 405, 410, 500)) ? $code : '4xx');
            // log to access.log
            Debugger::log("HTTP code $code: {$exception->getMessage()} in {$exception->getFile()}:{$exception->getLine()}", 'access');
        } else {
            $this->setView('500'); // load template 500.latte
            Debugger::log($exception, Debugger::ERROR); // and log exception
        }
    }

}

config

nette:
	application:
		errorPresenter: Front:Error
Aurielle
Člen | 1281
+
0
-

A existuje skutečně ten soubor?

shificz
Člen | 15
+
0
-

Ne já myslím když si někdo bude hrát s url aby mu to napsalo 404 stárnku

Etch
Člen | 403
+
0
-

No ale otázka zněla, jestli existuje daný soubor tedy

C:\xampp\htdocs\minnesota\app/config.neon

??

Ale popravdě už při přečtení těchto dvou řádků:

File ‘C:\xampp\htdocs\minnesota\app/config.neon’ is missing or is not readable.

a

$configurator->addConfig(__DIR__ . '/config/config.neon');

mi něco krapet nehraje.

shificz
Člen | 15
+
0
-

Config neon je napojen :) web mi funguje jen potřebuji zabránit „web.cz/asgdsghad“ aby mu to napsalo chyba 404 a né server error

Etch
Člen | 403
+
0
-

No jenže ta chyba říká něco jiného. Tohle se tváří, jak kdyby si měl v bootstrapu (nebo to někde volal)

$configurator->addConfig(__DIR__ . '/config.neon');

a ne jak uvádíš

$configurator->addConfig(__DIR__ . '/config/config.neon');

(nedovedu si představit, že by jakékoliv nastavení dokázalo odpárat část hard coded cesty k souboru)

Editoval Etch (30. 11. 2014 23:31)