404 na localhoste (EasyPHP) pri klinknuti na odkaz na prezenter
- srobowak
- Člen | 27
Zdravim, mam taky problem, ze ked kliknem na odkaz na moj prezenter, dostanem chybu 404. Odkaz mam v sablone definovany takto:
<a href="{link Item:}">Items</a>
V priecinku presenters mam vytvoreny subor ItemPresenter.php a v nom definovanu triedu ItemPresenter. Dalej mam v priecinku templates vytvoreny priecinok Item a v nom sablonu default.latte. Vsetky cesty aj nazvy (male/velke pismena) by teda mali sediet.
Requirements Checker mi stale hlasi warning „Mod_rewrite is probably not present. You will not be able to use Cool URL“.
Pritom v httpd.conf mam odkomentovany riadok:
LoadModule rewrite_module modules/mod_rewrite.so
A tiez mam nastavene AllowOverride All
vseobecne na vsetky
priecinky, aj zvlast na priecinok www.
V subore www/.htaccess mam:
<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>
Fakt neviem, co by som este mohol nastavit… Vdaka za rady.
- nanuqcz
- Člen | 822
Ahoj,
pokud tvůj server nepodporuje mod_rewrite, tak jeho „zapnutí“ v .htaccess
ti nepomůže (nemůžeš zapnout něco, co na serveru není).
Existuje na to ale jednoduché řešení, místo klasického Routeru (který generuje Cool URL), použiješ SimpleRouter (který generuje klasické odkazy).
# bootstrap.php
use Nette\Application\Routers\SimpleRouter;
...
// Setup router
$container->router[] = new SimpleRouter('Homepage:default');
Viz dokumentace.