Nefunguje routování v modulech

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

Ahoj lidi,

stavím modulární aplikaci a mám problém s nastavením rout. Moje routy jsou:

<?php
	public function createRouter()
	{
		$router = new RouteList();

		$router[] = $adminRouter = new RouteList('Admin');
		$adminRouter[] = new Route('admin/<presenter>[/<action>][/<id>]', 'Homepage:default');

		$router[] = $waitressRouter = new RouteList('Waitress');
		$waitressRouter[] = new Route('waitress/<presenter>[/<action>][/<id>]', 'Orders:default');

		$router[] = $clientRouter = new RouteList('Client');
		$clientRouter[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:default');

		return $router;
	}
?>

V šabloně pak odkazuju:

<a n:href="Offer:">Nabídka</a>

Odkaz generuje localhost/offer/, ale když na ni chci přejít, dostanu jen:

Not Found
The requested URL /offer/ was not found on this server.

Může mě někdo nakopnout správným směrem?

newPOPE
Člen | 648
+
0
-

Not Found hlasi server (Apache, nginx, …) alebo Nette.

Ak Nette tak ked napises n:href="Offer:" tak sa myslim pouzije aktualny modul. Priklad ked si na /adminAdminModule tak by sa tam malo zobrazit /admin/offer/.

Ak chces aby link bol do ineho modulu musis to definovat „absolutne“ :Module:Foo:

Lawondyss
Člen | 106
+
0
-

Zapomněl jsem dodat, že výchozí modul je Client a v tomto modulu odkazuju na OfferPresenter v tom samém modulu.

newPOPE
Člen | 648
+
0
-

Otazne potom je kto vrati Not Found. Ak server ako taky tak to moze byt v rewrite.

Lawondyss
Člen | 106
+
0
-

Tahle 404 je od serveru.
Zkusil jsem v .htaccess povolit zápis RewriteBase /, ale nemělo to žádný vliv na výsledek.

newPOPE
Člen | 648
+
0
-

Este ma napada ze mozno nemas povoleny AllowOverride alebo tak nejak a ze ten .htaccess server proste ignoruje…

Skus si tam dat nieco ako RewriteRule .* https://nette.org -L co by malo presmerovat na nette.org. Mozno je tam syntax chyba a ked ti server da 500 tak budes vediet ze .htaccess funguje ;-)

Lawondyss
Člen | 106
+
0
-

newPOPE napsal(a):

Este ma napada ze mozno nemas povoleny AllowOverride alebo tak nejak a ze ten .htaccess server proste ignoruje…

Díky, skutečně jsem neměl povolený AllowOverride.