Routa s přesměrovaním všeho na jednu routu

vosy
Člen | 532
+
0
-

Ahoj jak udělat aby http://www.sq.loc/ ; http://www.sq.loc/cokoliv ; http://www.sq.loc/en a http://www.sq.loc/en/cokoliv
bylo přesměrováno na UnderConstructionPresenter.php

myslel jsem nějak takto

$router->addRoute('[<locale=cs cs|en>/]', [
            'presenter' => 'UnderConstruction', // Target the UnderConstruction presenter
            'action' => 'default', // Default action
        ]);

ale dostávám
User Warning
Invalid link: No route for Home:default(locale=cs)

Kamil Valenta
Člen | 815
+
0
-
  1. proč by tato routa měla matchnout http://www.sq.loc/cokoliv a http://www.sq.loc/en/cokoliv ?
  2. asi někde v n:href odkazuješ na Home:default, proč by ho měla matchnout routa UnderConstruction:default ?
vosy
Člen | 532
+
0
-

Kamil Valenta napsal(a):

  1. proč by tato routa měla matchnout http://www.sq.loc/cokoliv a http://www.sq.loc/en/cokoliv ?
  2. asi někde v n:href odkazuješ na Home:default, proč by ho měla matchnout routa UnderConstruction:default ?
  1. netuším potřeboval bych to rozlousknout
  2. nikde h:href nemam

ted uz mi to píše u http://www.sq.loc/eee
Cannot load presenter ‚Eee‘, class ‚App\Presenters\EeePresenter‘ was not found
Potřeboval bych to přesměrovat na UnderConstructionPresenter

dix

Kamil Valenta
Člen | 815
+
0
-

Nechej routy tak jak byly, když celá aplikace fungovala (tak možná tam nemáš n:href, ale plink, nebo redirect).

Před všechny routy si přidej novou, která bude

$router->addRoute('[<cokoliv .*>]', [
            'presenter' => 'UnderConstruction', // Target the UnderConstruction presenter
            'action' => 'default', // Default action
        ]);

Bude to první routa a bude natolik „hladová“, že do parametru „cokoliv“ matchne i delší string oddělený lomítky.

Pokud chceš ale odstavit celý web, není snazší přepsat index.php ? Nebo to v .htacces překlopit na nějaký maintenance.php ?

Editoval Kamil Valenta (20. 9. 20:58)

vosy
Člen | 532
+
0
-

nemusim tam nejak zakomponovat

[<locale=cs cs|en>/]

Editoval vosy (20. 9. 21:13)

vosy
Člen | 532
+
0
-

tohle frcí, diky

$router->addRoute('[<locale=cs cs|en>/][<cokoliv .*>]', [
            'presenter' => 'UnderConstruction', // Target the UnderConstruction presenter
            'action' => 'default', // Default action
        ]);

Editoval vosy (20. 9. 21:17)