Firefox обнаружил, что сервер перенаправляет запрос на этот адрес способом, который никогда не будет завершен - PullRequest
2 голосов
/ 10 октября 2009

Я следую учебникам Скотта Дэвиса по разработке приложений Grails, но всякий раз, когда я пытаюсь запустить свое приложение (или действительно его исходный код), я получаю "Firefox обнаруживает, что сервер перенаправляет запрос для этого адреса таким образом, что никогда не будет завершена ". Safari выдает сообщение об ошибке, подобное Opera.

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

Это проблема с веб-сервером на моем компьютере? Я использую Mac OS Snow Leopard, поэтому я полагаю, что это ошибка Apache.

Edit: кажется, Grails как стандарт использует Jetty, поэтому, вероятно, не Apache, который вызывает проблему. Однако также протестировал приложение на Glassfish, и я получаю ту же ошибку.

Кто-нибудь знает, что я могу сделать, чтобы это исправить?

Приветствия

Ответы [ 3 ]

4 голосов
/ 10 октября 2009

Это зависит от кода и конфигурации Apache, которую вы используете. Я предполагаю, что веб-сервер отправляет циклические перенаправления HTTP, например. от /root/ до /root (без косой черты) и наоборот. Это вызывает перенаправление бесконечного цикла.

Проверьте вашу конфигурацию на условия, которые вызывают перенаправление HTTP. Например, Apache автоматически добавляет косые черты к URL-адресам каталогов в стандартной конфигурации (как в примере /root/ выше). Я не знаю Grails, поэтому не могу подсказать, как обрабатываются URL-адреса в приложении.

Вы также можете использовать HTTP-запросы вручную для отладки, чтобы увидеть, что происходит за кулисами, используя telnet на терминале:

$ telnet localhost 80
GET / HTTP/1.0

Полагаю, ответ будет примерно таким:

HTTP/1.0 302 Found
Location: XXX
...

Теперь выполните второй запрос по URL, переданному в заголовке Location и т. Д.

3 голосов
/ 10 октября 2009

Я недавно получил ту же ошибку, вот как я исправил:

  1. Попробуйте использовать ту же страницу на другом компьютере (это может быть ваш Интернет-провайдер)
  2. Откройте Safari, Firefox или что-то еще, что вы используете, очистите кеш и удалите ВСЕ ваши куки
  3. Перезагрузите компьютер и попробуйте снова

Может работать сейчас, но если нет:

  1. откройте Firefox и введите «about: config» (без кавычек) в строку URL
  2. Вы получите небольшое предупреждение, просто нажмите ОК
  3. Введите 'redirect' в поле фильтра
  4. Вы должны увидеть список «network.http.redirection-limit»
  5. Дважды щелкните по списку и введите большое число (от 50 до 200)
  6. Нажмите OK, выйдите и снова откройте FireFox

По сути, все, что делает FireFox, это делает допуск на петли перенаправления выше, что должно решить вашу проблему - но обычно, просто заимствование чужого подключения к Интернету исправляет это

Надеюсь, что все поможет =)

2 голосов
/ 14 октября 2009

Просто внимательно проверьте свою конфигурацию URLMappings:

YOUR_APP / Grails-приложение / CONF / UrlMappings.groovy

Общий случай:

Вы настроили запрос на обработку следующим образом:

"/ что-нибудь" (контроллер: "someController")

Таким образом, без действий запрос будет обработан по умолчанию - «index». действие «index» обычно перенаправляет на «list», а «list», в некоторых случаях, перенаправляет обратно на «index»

Вот твой цикл.

Удачи

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