Java 当通过nginx时,不会重定向请求

Java 当通过nginx时,不会重定向请求,java,grails,nginx,spring-security,Java,Grails,Nginx,Spring Security,我们有Grails应用程序在Tomcat上运行。所有对80端口的请求都被Nginx重定向到8080。 对于我们应用程序中的安全性,我们使用Spring security 所以问题是:当用户成功登录到应用程序时,必须将其重定向到另一个页面,但不会发生 在Chrome浏览器中,什么也没发生,Firefox页面显示“损坏的内容错误” 当我们直接访问8080端口上的应用程序时,没有问题。 当我手动删除带有jsessionid的cookie时,问题也消失了,但在第一次重定向之后,它再次出现,并且问题仍然存

我们有Grails应用程序在Tomcat上运行。所有对80端口的请求都被Nginx重定向到8080。 对于我们应用程序中的安全性,我们使用Spring security

所以问题是:当用户成功登录到应用程序时,必须将其重定向到另一个页面,但不会发生

在Chrome浏览器中,什么也没发生,Firefox页面显示“损坏的内容错误”

当我们直接访问8080端口上的应用程序时,没有问题。 当我手动删除带有jsessionid的cookie时,问题也消失了,但在第一次重定向之后,它再次出现,并且问题仍然存在

nginx配置:

 server {
    limit_conn addr 10;
    listen externalIp:80;
    server_name serverName;
    root /var/ut/;

    location / {
            proxy_pass http://127.0.0.1:8080/;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass_header Set-Cookie;
            proxy_pass_header P3P;
    }

}

我修复了它,但不是通过nginx配置

我已将此代码添加到身份验证控制器的登录操作中:

    HttpSession session = request.getSession(false);
    if (session!=null && !session.isNew()) {
        session.invalidate();
    }
当我的请求通过nginx时,我真的不知道为什么会存在这个问题。
但这是今天的修补程序。

配置看起来不错。您可以用localhost替换127.0.0.1。尝试使用listen80;而不是外部性P:80。如果这不起作用,请检查您的nginx版本。