Nastavení routerů zobrazí Nette Error 404
- janys80
- Člen | 4
Zdravím, omlouvám se za blbý dotaz, ale potřebuji poradit kde dělám chybu.
Potřebuji zprovoznit zpracování URL ve tvaru www.example.com/…-jizdni-kolo
Prostě v URL bude doména, inzerat (nějak jsem pochopil, že to je presenter)
a poslední parametr bude unikatni alias, resp. [IDinzeratu]-[nadpis inzeratu
prehnany pres String::webalize()]
V bootstrap.php mám v routerech nastaveno toto :
// setup application router
$router = $application->getRouter();
$router[] = new Route('index.php', array(
'presenter' => 'Homepage',
'action' => 'default',
), Route::ONE_WAY);
$router[] = new Route( 'inzerat/<id>/', array(
'module' => 'Front',
'presenter' => 'Inzerat',
'action' => 'default',
'id' => NULL )
);
Problém je v tom, že na lokále to funguje, a jakmile to dam na server tak to neběží. Na lokále i na serveru mám stejný .htaccess. Podle mě by v něm být chyba neměla, ale samozřejmě se můžu mýlit.
# mod_rewrite
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# front controller
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !\.(pdf|js|ico|gif|jpg|png|css|rar|zip|tar\.gz)$ index.php [L]
</IfModule>
Dále mám připravený presenter s názvem InzeratPresenter.php a v něm je ..
class Front_InzeratPresenter extends FrontBasePresenter {
/**
* StartUp
*/
public function startup()
{
parent::startup();
$this->master = 'detail';
$this->layout = 'detail';
}
/**
* default
*/
public function renderDefault()
{
echo 'test<br>';
if ( isset( $this->params['id'] ) )
{
$p = explode( '-', $this->params['id'] );
if ( ( count( $p ) > 0 ) && ( is_numeric( $p[0] ) ) )
{
// zde bude zpracovani pozadavku na zobrazeni zaznamu podle ID z $p[0]
}
}
}
}
Nevím kde je chyba, protože na serveru se uživatel nedostane do funkce
renderDefault(), prostě to vypíše chybovou stránku Nette 404, není to
klasická chyba serveru.
Proto si myslím, že mi ještě někde něco buď chybí, nebo mám někde
něco špatně uvedeno.
Nevím jestli je chyba v zápise v routeru nebo ve zpracování routy, fakt
netuším, prosím o pomoc …
Díky všem