lomítko i zpětné lomítko v jedné cestě
- m.tr@email.cz
- Člen | 3
Asi se ptám po 150 na stejný problém, ale v dokumentaci jsem řešení nenašel.
Při pokusu o zprovoznění ukázkové první aplikace mi Laděnka vrací chybu:
=====
Nette\Application\InvalidPresenterException
Cannot load presenter ‚Index:Php‘, class ‚IndexModule\PhpPresenter‘ was not found in ‚D:\dev\php_nette\TskMng\tm_0v2\app/IndexModule/presenters/PhpPresenter.php‘.
Domnívám se, že jsou v jedné cestě k souboru PhpPresenter.php špatně lomítka.
Poradíte prosím co s tím?
Poznámka – kontrola prostředí (checker.php) prochází dobře.
- pave.kucera
- Člen | 122
V lomítkách není problém. Jsi si stoprocentně jistý, že existuje presenter IndexModule\PhpPresenter v souboru, který zmiňuje Tracy?
Pokud jo, ukaž prosím definici routeru a presenter PhpPresenter.
- m.tr@email.cz
- Člen | 3
Děkuji oběma pánům za rychlou odpověď. Nejsem zvyklý, aby mi někdo
poskytl tak rychle radu :-)
Fakt je, že PhpPresenter jsem ve svém úvodním projektu neměl. Jsem tupoň.
Tohle mne mělo napadnout jako první kontrolu…
Zkouším v úvodním projektu pokračovat… Ještě jednou díky. Miloš
- Michal Vyšinský
- Člen | 608
Ahoj,
ukaž router. Řekl bych, že ti to dělá tento problém, když máš v url
přímo index.php že?
Edit: Nebo zkontroluj, jestli máš v routeru tuto routu:
new Route("index.php", "Homepage:default", Route::ONE_WAY);
Editoval Michal Vyšinský (7. 3. 2014 12:02)
- khamyl
- Člen | 3
nj.. ale kdyz jdu pres http://localhost/…etteApp/www/ tak dostanu 403 – Forbidden
TADY JE ROUTER (asi):
<script>
namespace App;
use Nette,
Nette\Application\Routers\RouteList,
Nette\Application\Routers\Route,
Nette\Application\Routers\SimpleRouter;
/**
* Router factory.
*/
class RouterFactory
{
/**
* @return \Nette\Application\IRouter
*/
public function createRouter()
{
$router = new RouteList();
$router[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:default');
return $router;
}
}
</script>
jo a pridal som tam
<script>
$router[] = new Route("index.php", "Homepage:default", Route::ONE_WAY);
</script>
a je to to same
Editoval khamyl (7. 3. 2014 12:17)
- Michal Vyšinský
- Člen | 608
Musíš tu routu s index.php dát jako první.
Co se týče té 403ky: Nejspíš ti nefunguje .htaccess nebo mod_rewite. Už se to tu párkrát řešilo.
Jestli funguje .htaccess zjistíš nejlépe napsaním čehokoli (nějaký blábol) do www/.htaccess souboru. Pokud se ti po refreshi ukáže SERVEROVÁ (hnusná nenastylovaná) 500ka, tak ti .htaccess funguje. Vrať zpět změny v .htaccess.
Mod_rewrite podporu zjistíš Requirements checkerem, když si stáhneš nette v ZIPu. Je ve složce tools/
- khamyl
- Člen | 3
.htaccess som uz odladil.. checker mi zagratuloval ze je vsetko ok.. ak dam ten route (index.php) na prve miesto dostanem 403.
Toto je .htaccess zlozky www:
<script>
# Apache configuration file (see httpd.apache.org/docs/current/mod/quickreference.html)
# disable directory listing
<IfModule mod_autoindex.c>
Options -Indexes
</IfModule>
# enable cool URL
<IfModule mod_rewrite.c>
RewriteEngine On
# RewriteBase /
# prevents files starting with dot to be viewed by browser
RewriteRule /\.|^\. - [F]
# 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>
# enable gzip compression
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/x-javascript text/javascript application/javascript application/json
</IfModule>
</script>
skusal som aj odkomentovat RewriteBase /
Editoval khamyl (7. 3. 2014 12:37)