Routovani se subdomenou – prvni routa bere vsechny requesty
- tr.
- Člen | 79
Ahoj, zkousim porve routovani a nekde jsem se zasekl:
Rad bych pouzival dynamicke subdomeny cokoliv.example.com a na hlavni domene mel neco jineho. Mam tedy presenter pro hlavni domenu – Homepage a pro vsechny subdomeny Pager. Subdomeny mi funguji, ale ten samy presenter se snazi zpracovavat i dotazy na hlavni domenu.
Jak donutim routovac aby nezachytaval http://exampla.com tim prvnim radkem?
Routovani mam nastaveno takto.
$router[] = new Route('<subdomain=^([a-zA-Z]{3,16})>.example.com/', 'Pager:production');
$router[] = new Route('index.php', 'Homepage:index', Route::ONE_WAY);
$router[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:index');
Dekuji
- Paradiso
- Člen | 101
routy se zpracovávají popořadě, takže bych to viděl takhle:
$router[] = new Route('index.php', 'Homepage:index', Route::ONE_WAY);
$router[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:index');
$router[] = new Route('<subdomain=^([a-zA-Z]{3,16})>.example.com/', 'Pager:production');
- tr.
- Člen | 79
Není to ono, v tomto připadě prostŕední routa sebere všechno a na poslední se nedostane.
Potřeboval bych to nastavit tak aby ta prostřední sebrala jen request na subdomenu
neco.example.com → spacialni presenter
A posledni sebrala cely zbytek (defaultni routa z instalace Nette)
Paradiso napsal(a):
routy se zpracovávají popořadě, takže bych to viděl takhle:
$router[] = new Route('index.php', 'Homepage:index', Route::ONE_WAY); $router[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:index'); $router[] = new Route('<subdomain=^([a-zA-Z]{3,16})>.example.com/', 'Pager:production');
- tr.
- Člen | 79
Dekuji vam obema, vyreseno.
$router[] = new Route(‚//[www.]example.com/‘, ‚Homepage:index‘);
//
$router[] = new Route(‚<presenter>/<action>[/<id>]‘,
‚Pager:production‘); //
Nazev subdomeny si pak nacitam az v prezenteru, nezjistil jsem jak ho odsud dostat dal bez tho aby se stal promennou v URL.
T.