Как это возможно, ответ 404 только в IE8? - PullRequest
4 голосов
/ 08 декабря 2011

У меня есть приложение Spring (с Spring Security и Spring MVC), развернутое на сервере Tomcat. Приложение отлично работает в Firefox, Chrome, Opera и IE9.

У меня странная проблема с IE8. Загружается экран входа в систему, и (как я вижу в журналах сервера) сеанс открыт, когда указаны имя пользователя и пароль. Как только пользователь вошел в систему и браузер перенаправлен на главную страницу, сервер возвращает ошибку 404.

Поскольку инструменты разработчика IE8 не имеют сетевой панели, я использовал Fiddler для мониторинга http-соединений. Я подумал, что могло случиться так, что он делал неправильный запрос во время загрузки страницы, но это был запрос главной страницы, который отвечает 404.

Как возможно, что сервер отвечает 404 на запрос главной страницы только в IE8?

Спасибо.

Отредактировано:

Это заголовок запроса для IE8 и Firefox соответственно:

GET /myWebApp/ HTTP/1.1
Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
Accept-Language: es-ES
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Win64; x64; Trident/4.0; .NET CLR 2.0.50727; SLCC2; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0; .NET4.0C; .NET4.0E)
UA-CPU: AMD64
Accept-Encoding: gzip, deflate
Host: dev.mydomain.com
Connection: Keep-Alive
Cookie: JSESSIONID=ABA1382304002F894ABDFCC2442FA5F8; SPRING_SECURITY_REMEMBER_ME_COOKIE=NGUxMTZlOTY3OGM0OTgxNDY4NDczOTlkOjEzMjQ1ODMwMzU0MDI6OWZiYzdhYjY1ODY2Mzc3YmI0Yzc5YTMzMWI5NDhjNTg

-

GET /myWebApp/ HTTP/1.1
Host: dev.mydomain.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20100101 Firefox/8.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: es-es,chrome://global/locale/intl.properties;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection: keep-alive
Cookie: JSESSIONID=7FD3B02252E2FCBC9BE7249AFD84F541; SPRING_SECURITY_REMEMBER_ME_COOKIE=NGUxMmYxMTgzMmRjZTM0NzYyMWVjOWEwOjEzMjQ1ODMwMTA1MTU6MzFiYzU4OGQ4NTMwN2Y3M2I4YmQzN2M0NzY2MzcwZjI

1 Ответ

1 голос
/ 09 декабря 2011

Зная, что проблема была в "Принять", я пересмотрел сопоставления классов контроллера MVC и наконец нашел проблему.Каким-то образом это было способом отображения главной страницы в MVC, поэтому он не работал с атрибутом заголовка IE8:

@RequestMapping( value = "/", headers = "Accept=text/*" )

Сегодня я усвоил тяжелый урок.; -)

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