Я использую Apache 2.2 для доступа к Microsoft Team Foundation Server 2015, настроенному на использование NTML.
Моя конфигурация для этой цели следующая:
ProxyPreserveHost On
ProxyPass /tfs/ http://tfs2015.mdlp.es:8080/tfs/
ProxyPassReverse /tfs/ http://tfs2015.mdlp.es/tfs/
Видимо, эта конфигурация отлично работает, когда есть только один пользователь. Когда подключается второй пользователь, он отображается как ранее зарегистрированный пользователь.
Я предполагаю, что это происходит из-за того, что apache поддерживает пул соединений с внутренним сервером, и это похоже на TFS, когда пользователь в этом поддерживающем соединении аутентифицируется, полагаясь на первые запросы, чтобы узнать о пользователе. Поскольку apache будет перенаправлять все запросы в уже созданный пул, это будет смешивать пользовательские сеансы в одном и том же соединении для поддержания активности.
На этом этапе я попытался использовать директиву disablereuse = On в ProxyPass, чтобы избежать использования пула соединений, но таким образом аутентификация NTLM не работает.
Просто интересно, смог ли кто-нибудь решить эту проблему, которая, возможно, связана не на 100% с Team Foundation, а с IIS.
РЕДАКТИРОВАТЬ:
Поскольку у меня на тех же обратных прокси-серверах установлен apache 2.0, я пытался настроить их таким же образом, и он работает правильно. Итак, есть ли способ ограничить функции proxypass на apache 2.2, чтобы они вели себя как apache 2.0?