Generování nuceně HTTPS odkazu v Nette 2.4
- Šaman
- Člen | 2659
Ahoj, potřebuji jednu konkrétní routu mít forced HTTPS. Flag
::SECURED
je deprecated a nepomáhá, řešení z dokumentace
také ne. Následující kód zařidí, že aplikace běží defaultně na http,
ale ta jedna routa co má být na HTTPS se sice zachytí, ale link se generuje
HTTP. Pokud jsem defaultně na HTTPS, tak se generuje také na HTTPS.
A pořád mi je divné psát vynuceni protoklu do masky. Opravdu se to má dělat jak píší v dokumentaci ?*
$router[] = new Route('https://%domain%/%basePath%/key/search-secured', 'Key:search'); # nuceně HTTPS link pro hledání klíčů
$router[] = new Route('http://%domain%/%basePath%/<presenter>/<action>[/<id>]', 'Homepage:default');
(*) A propo – zástupný
znak %host%
(uvedený v tom prvním odkazu) asi neexistuje,
rozhodně mi nefungoval.
P.S. Jde mi o generování odkazu – ten pak vkládám do JS kvůli ajaxovému našeprávači. Kdyby to byl běžný odkaz a ja na něj přešel, tak mě to přesměruje. Ale já potřebuji vygenerovat rovnou HTTPS odkaz, ať jsem, či nejsem na HTTPS stránce.
Editoval Šaman (8. 5. 2020 3:19)
- Šaman
- Člen | 2659
Nefungovalo to, ale teď jsem to zkoušel na čistém sandboxu a funguje to, sorry. S těmi zástupnými znaky jsem došel k tomuhle zápisu, jiné mi užíraly kusy adresy na localhostu, nebo na testovacím serveru, kde je projekt až na doméně tdruhé úrovně.
$router[] = new Route('https://%host%/%basePath%/<presenter>/<action>[/<id>]', 'Homepage:default');