Назад | Перейти на главную страницу

Как исправить ProxyPass в URL и подпапке?

Я сделал прокси-пропуск, добавив к моему экземпляру localhost путь / вокаб / арка. Вот конфигурация, которую я использовал:

        <IfModule mod_proxy.c>

                ProxyPass /vocab/arch http://localhost:3000/
                ProxyPassReverse /vocab/arch http://localhost:3000/
                Alias /vocab/arch /assets/
        </IfModule>

        <Location />
                Require all granted
        </Location>

        RewriteEngine On
        RewriteRule  ^/vocab/arch   -  [L]
        RewriteRule  ^/(.*)    http://localhost:3000/$1  [P,L]
        ProxyPassReverse /vocab/arch     http://localhost:3000/

Указывает на http: // локальный: 3000 / У меня целевая страница моего веб-приложения, как и ожидалось, под http: // локальный: 3000 / вокаб / арка / en.html.

Однако, нажав на ссылку, например "Коллекции", я https: // localhost: 3000 / en / collections.html вместо того https: // локальный: 3000 / лексикон / арка / эн / коллекции.html

Как я могу решить эту проблему?

заранее спасибо

Исправьте свой суб-хост. proxy-pass не будет перезаписывать ответы, приходящие с другого веб-сервера. Итак, если другой сервер (на порту 3000) дает hrefs и ссылки на URL-адреса без правильных путей, вы точно увидите, что у вас есть.

то есть ваш localhost: 3000 сервер возвращает ссылки на https: // localhost: 3000 / en / collections.html вместо того https: // локальный: 3000 / лексикон / арка / эн / коллекции.html