Aplikace na jiné adrese než na výchozí „/“

- MedaKeR
- Člen | 14
Ahojte,
mám aplikaci co je dostupná na adrese domena.cz/aplikace/ ale
adresář www je v Apache DocumentRoot (v tomto adresáři je
index.php). Problém nastane když chci přesměrovat na
Homepage:default – dostávám relativní adresu / (směruje na
domena.cz/).
Pokud přepíšu routu na
$router->addRoute('aplikace/', 'Homepage:default');
tak při načtení domovské stránky dostanu přesměrování na url
domena.cz/aplikace/aplikace/.
Cílem je mít na adrese domena.cz/aplikace/ domovskou stránku
a všechny ostatní routy braly /aplikace/ jako výchozí.
Editoval MedaKeR (3. 1. 2023 19:22)

- Kamil Valenta
- Člen | 846
A nechceš spíše routu
$router->addRoute('/aplikace/', 'Homepage:default');
?
Nebo tam předsadit i doménu.

- MedaKeR
- Člen | 14
A nechceš spíše routu
$router->addRoute('/aplikace/', 'Homepage:default');
Takováhle routa mě pošle na ...cz/aplikace/aplikace/.
?
Nebo tam předsadit i doménu.
$router->addRoute('//%host%/aplikace/', 'Homepage:default');
A routa takto také.
Problém je v tom, že aplikace je fyzicky na jiném serveru,
domena.cz/aplikace/ je pouze reverse proxy – vezme to co je za
aplikace/ a předá to serveru kde aplikace běží.
Takže když mám adresu např. domena.cz/aplikace/user/login
tak jí standartně odpovídající routa je
('/aplikace/user/login', 'User:login').
Jenže server s aplikací v mém případě obdrží pouze
/user/login. A když pak přes n:href vkládám odkaz
tak potřebuji před samotnou routu vložit /aplikace/ tak, aby to
nebylo součástí routeru.
Editoval MedaKeR (4. 1. 2023 10:54)

- Kamil Valenta
- Člen | 846
Aha, info že je to za proxy v úvodu chybělo. A je proxy nastavená v neonu? Předává proxy hlavičku X_FORWARDED_HOST?

- Kamil Valenta
- Člen | 846
MedaKeR napsal(a):
Nebo tam předsadit i doménu.
$router->addRoute('//%host%/aplikace/', 'Homepage:default');A routa takto také.
Myslel jsem explicitně.
$router->addRoute('https://domena.cz/aplikace/', 'Homepage:default');

- MedaKeR
- Člen | 14
Kamil Valenta napsal(a):
Aha, info že je to za proxy v úvodu chybělo. A je proxy nastavená v neonu? Předává proxy hlavičku X_FORWARDED_HOST?
Proxy v neonu nastavená je, HTTP_X_FORWARDED_HOST obsahuje pouze
domena.cz.
Pokud by HTTP_X_FORWARDED_HOST vracel
domena.cz/aplikace/, pomohlo by to?
Myslel jsem explicitně.
$router->addRoute('https://domena.cz/aplikace/', 'Homepage:default');
Tahle routa mě přesměruje na
https://domena.cz/aplikace/aplikace/ hned po načtení https://domena.cz/aplikace/
Editoval MedaKeR (4. 1. 2023 14:49)