Java Firefox检测到服务器正在以一种永远无法完成的方式重定向对此地址的请求

Java Firefox检测到服务器正在以一种永远无法完成的方式重定向对此地址的请求,java,apache,grails,groovy,Java,Apache,Grails,Groovy,我一直在关注Scott Davis关于开发grails应用程序的文章,但每当我尝试运行我的应用程序(或者他的源代码)时,我都会得到“Firefox检测到服务器正在以一种永远无法完成的方式重定向对此地址的请求。”Safari会给出与Opera类似的错误消息 由于我已经测试了原始作者的源代码,它给出了相同的错误,我相当确信这与代码无关 这是我机器上的web服务器的问题吗?我使用MacOSSnowLeopard,所以我假设是apache产生了这个错误 编辑:似乎Grails作为标准使用Jetty,所以

我一直在关注Scott Davis关于开发grails应用程序的文章,但每当我尝试运行我的应用程序(或者他的源代码)时,我都会得到“Firefox检测到服务器正在以一种永远无法完成的方式重定向对此地址的请求。”Safari会给出与Opera类似的错误消息

由于我已经测试了原始作者的源代码,它给出了相同的错误,我相当确信这与代码无关

这是我机器上的web服务器的问题吗?我使用MacOSSnowLeopard,所以我假设是apache产生了这个错误

编辑:似乎Grails作为标准使用Jetty,所以可能不是Apache造成了问题。然而,我也在Glassfish上测试了这个应用程序,我得到了同样的错误

有人知道我能做些什么来解决这个问题吗


干杯

不久前我遇到了同样的错误,下面是我如何修复的:

  • 在不同的internet设置上尝试相同的页面(可能是您的ISP)
  • 打开Safari、Firefox或任何您使用的浏览器,清空缓存并删除所有cookie
  • 重新启动计算机,然后重试
  • 它现在可以工作了,但如果不行:

  • 打开Firefox并在URL栏中键入“about:config”(不带引号)
  • 您将收到一些小警告,只需按OK
  • 在筛选框中键入“重定向”
  • 您应该看到“network.http.redirection limit”的列表
  • 双击列表并键入一个大数字(大于50但小于200的任何数字)
  • 按OK,退出并重新打开FireFox
  • 基本上,所有这一切都是为了提高FireFox对重定向循环的容忍度,这应该可以解决你的问题——但通常,只要借用别人的互联网连接就可以解决问题


    希望所有帮助=)

    这取决于您使用的代码和Apache配置。我假设web服务器发送循环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执行第二个请求,依此类推。

    只需仔细检查URLMappings配置:

    您的_APP/grails APP/conf/UrlMappings.groovy

    常见情况:

    您已将请求配置为如下方式处理:

    “/anything”(控制器:“someController”)

    因此,如果没有操作,请求将被默认处理为一个“索引”。“索引”操作通常重定向到“列表”,而“列表”在某些情况下重定向回“索引”

    这是你的循环


    祝你好运,干杯,还是不行。我会打开窗户看看是否有同样的问题。太棒了。我现在正在四处奔波,但我明天会查一查,希望我能查个水落石出。