Ошибка HTTP Status 408 при входе в систему с настройкой переадресации домена - PullRequest
0 голосов
/ 13 ноября 2009

На моем сайте wemanageloans.com многие пользователи получают следующую ошибку при попытке войти с правильными учетными данными:

HTTP Status 408 - превышено время, отведенное для процесса входа в систему. Если вы хотите продолжить, вы должны либо дважды щелкнуть назад и повторно щелкнуть запрашиваемую ссылку, либо закрыть и снова открыть браузер

Это происходит, только если они пытаются войти с URL: http://www.wemanageloans.com

Я настроил переадресацию домена на URL: http://59.176.19.181:8080

Эта ошибка не возникает, если пользователь пытается напрямую получить доступ к вышеуказанному URL-адресу на основе IP-адреса.

Кроме того, хотя у некоторых пользователей эта ошибка возникает постоянно, у некоторых она периодически возникает.

Пожалуйста, сообщите, что может быть не так с переадресацией домена, и что мне может понадобиться настроить на моей стороне.

Я использую аутентификацию Tomcat 6 ', используя j_security_check.

Ответы [ 4 ]

5 голосов
/ 13 ноября 2009

Когда я посетил сайт, я увидел, что cookie-файл сеанса не был установлен сразу - даже после первой попытки входа в систему.

Полагаю, что с началом сессии что-то не так.

Поскольку "переадресация" осуществляется через фрейм, маскирующий ваш сайт, я бы посоветовал прекратить это: он частично запутывает происходящее. Либо получите правильное разрешение DNS, используйте mod_jk или аналогичный для предоставления содержимого tomcat через apache, либо просто перенаправьте людей для непосредственного использования IP. Это, скорее всего, избавит вас от ваших проблем (я никогда не видел их в этом сценарии). В случае непосредственного использования IP-адреса это приводит к уродливому URL-адресу, поэтому правильное разрешение DNS должно быть тем, к чему вы стремитесь.

Редактировать: Не знаю, если вы уже делаете это: имейте в виду, что - используя j_security_check - вы не можете просто предоставить пользователю форму для входа, но для ее представления вам нужно полагаться на tomcat. (НАСКОЛЬКО МНЕ ИЗВЕСТНО). Для этого ваша страница http://59.176.19.181:8080/personalcredit/loans.htm (которая является первой показанной страницей) не должна иметь форму входа в систему, вместо этого она должна быть объявлена ​​защищенной, так что tomcat сам по себе предоставляет настроенную страницу входа для пользователь. Если loan.htm не был объявлен защищенным, у tomcat не было причин начинать новый сеанс, который объяснил бы наблюдаемое поведение.

Это не объясняет недетерминизм.

1 голос
/ 23 июня 2016

Кажется, я нашел очень простое решение

<meta http-equiv="Cache-Control" content="no-store,no-cache,must-revalidate"/>
<meta http-equiv="Pragma" content="no-cache"/>
<meta http-equiv="Expires" content="-1"/>

Благодаря Грегу http://readlist.com/lists/tomcat.apache.org/users/7/35987.html

1 голос
/ 16 ноября 2015

Я исправил эту проблему, добавив интервал в login.html и login-fault.html

setInterval(function(){
        location.reload(true);
    },5*60*1000);

login.html и login-fault.html одинаковы. За исключением login-fault.html содержит текст " Неверное имя пользователя или пароль "

1 голос
/ 13 ноября 2009

Может быть связано с кэшированием. Попробуйте отправить заголовок, например:

Cache-Control: no-cache,no-store,must-revalidate
Pragma: no-cache

Просто чтобы исключить эту опцию ...

В любом случае 408 - это тайм-ауты, возможно, ваш сервер занимает больше времени направить эти запросы? Маловероятно, но все же возможно.

Другой подход - настроить ваш tomcat server.xml для прослушивания порта 80, просто чтобы убедиться, что использование порта 8080 не вызывает проблемы ...

server.xml должен выглядеть примерно так:

<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" 
redirectPort="8443" />

НТН

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...