Я могу войти в Liferay, используя IP-адрес, но не могу войти, используя URL портала - PullRequest
0 голосов
/ 29 августа 2018

У меня есть два экземпляра Liferay 6.2, перед которыми находится HAProxy для балансировки нагрузки. HAproxy существует на другом сервере и имеет собственный IP-адрес. URL портала указывает на балансировщик нагрузки HAproxy. Я могу войти, используя IP-адрес любого из серверов Liferay. Когда я хочу выполнить вход с помощью URL-адреса, меня успешно перенаправляют на страницу входа в Liferay, но после ввода имени пользователя / пароля и нажатия кнопки «Вход» страница входа снова появляется без каких-либо сообщений об ошибках, ни в пользовательском интерфейсе, ни в Tomcat. журнал. Основанный на журнале Tomcat, фоновый процесс входа работает хорошо, но он не перенаправляет на какую-либо соответствующую страницу портала. Более того, если я ввожу неверные учетные данные, сообщения об ошибках не отображаются, и страница входа снова появляется.

1 Ответ

0 голосов
/ 06 ноября 2018

HAproxy использует различные алгоритмы для распределения нагрузки. Наша первоначальная установка использовала 'roundrobin'. Этот алгоритм работает, используя каждый сервер за балансировщиком нагрузки по очереди в соответствии с их весами. Нажмите здесь для более подробной информации. Что касается этого алгоритма, каждый HTTP-ответ успешного входа в систему на одном экземпляре Liferay перенаправляется на другой экземпляр Liferay, пока он не знает о запросе на вход в систему. Путем изменения roundrobin на source проблема была решена, поскольку этот алгоритм балансирует нагрузку в отношении IP-адреса полученных HTTP-запросов. Он посвящает каждый сервер некоторым клиентам. Другими словами, этот алгоритм предотвращает такие ситуации, когда клиент получает ответы от разных серверов, поэтому сеансы HTTP не пропускаются.

...