Apache перепишіть відносну URL-адресу програми


0

У мене веб-додаток працює на localhost і слухає порт 5050. Я хотів би, щоб ця веб-програма була під URL-адресою з відносним доменом.tld / сторінка / додаток

Я намагався використовувати mod_rewrite:

    <Location /page/app>
        RewriteEngine on
        RewriteRule .*$ http://127.0.0.1:5050/$1 [P,QSA,NE]
    </Location>

Це переписує domain.tld / сторінку / додаток до domain.tld / login, що не є дійсною URL-адресою на моєму сервері.

Чи можливо змінити перезапис? Я не можу використовувати ProxyPassReverse, тому що мені потрібно видалити відносний шлях з URL, коли я проксі запит на додаток.


Звідки /loginбереться? Це, мабуть, є результатом вашої логіки веб-додатків, оскільки, здається, не має нічого спільного з цими директивами?
MrWhite

@MrWhite Так, це походить із логіки програми. Програма не була написана для використання відносного шляху. Я не писав цю програму і не хочу її перекомпілювати.
Фурія

Відповіді:


0

Це корпус підручника з mod_proxy .

ProxyPass         "/page/app/" "http://127.0.0.1:5050/"
ProxyPassReverse  "/page/app/" "http://127.0.0.1:5050/"

Зауважте, що з цим синтаксисом ви не використовуєте це всередині <Location>.


Це змінює URL-адресу браузера на domain.tld / login, і я отримую помилку 404. URL-адреса має бути domain.tld / page / app / login
Фурія
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.