如何修复URL和子文件夹中的ProxyPass?

我通过代理传递,将路径/ vocab / arch添加到了我的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:// localhost:3000 / 我的Web应用程序着陆页如预期的在 http:// localhost:3000下 /vocab/arch/en.html

不过,我在 https:// localhost:3000 / en / collections.html 而非 https:// localhost:3000 / vocab / arch / zh / collections.html

如何解决此问题?

提前感谢

0
задан 7 November 2019 в 18:17
1 ответ

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

т.е. ваш localhost:3000 сервер возвращает ссылки на https://localhost:3000/en/collections.html вместо https://localhost:3000/vocab/arch/en/collections.html

0
ответ дан 5 December 2019 в 00:02

Теги

Похожие вопросы