Прокси-сервер Apache 2.4 добавляет параметр запроса ко всем запросам - PullRequest
0 голосов
/ 05 июля 2018

Я использую Crafter CMS с несколькими арендаторами. Я пытаюсь настроить Apache2.4 на RHEL7, чтобы он был обратным прокси. http://site.example.com -> ajp: // localhost: 9009 /? CrafterSite = site

Вот моя конфигурация виртуального хоста Apache2. Я убедился, что mod_proxy и mod_rewrite загружены. Я могу связаться с Crafter Delivery через прокси-сервер, но перезапись не работает, так как Crafter не знает, какой сайт я пытаюсь загрузить. У кого-нибудь есть какие-либо предложения о том, как заставить это работать.

<VirtualHost *:80>
    ServerName site.example.com
    LogLevel alert rewrite:trace3
    RewriteEngine  On
    RewriteRule ^$ /?crafterSite=site [QSA,L]

    <Proxy *>
            Order allow,deny
            Allow from all
    </Proxy>

    ProxyRequests           Off
    ProxyPreserveHost       On
    ProxyPass               /       ajp://localhost:9009/
    ProxyPassReverse        /       ajp://localhost:9009/
</VirtualHost>

1 Ответ

0 голосов
/ 06 июля 2018

Попробуйте изменить правило перезаписи на:

RewriteRule (.*) $1?crafterSite=site [QSA,PT]

Где site - идентификатор вашего сайта.

Различия:

  • Он переписывает все, что приходит, независимо от URL и сохраняет его (см. (.*) и $1)
  • Это сквозной PT (не перенаправление). Это означает, что он дополняет запрос параметром и пропускает его прямо к Crafter Engine.
...