3

尝试将我的 Symfony 项目从 2.2 升级到 2.3 这还需要我升级以下软件包:

  • JMS/SecurityExtraBundle 从 1.4.* 到 1.5.*
  • JMS/DIExtraBundle 从 1.3.* 到 1.4.*
  • FOS/UserBundle 从 1.3.1 到 1.3.*
  • FOS/FacebookBundle 从 1.1.0 到 1.2。*

成功运行 composer update 和 cache:clear 后,项目主页正常加载,但尝试通过正常登录表单登录时出现错误:

从服务器收到重复的标头 服务器的响应包含重复的标头。此问题通常是由于网站或代理配置错误造成的。只有网站或代理管理员可以解决此问题。错误 350 (net::ERR_RESPONSE_HEADERS_MULTIPLE_LOCATION):收到多个不同的 Location 标头。不允许这样做以防止 HTTP 响应拆分攻击。

我试图通过文档查看更改,但还没有任何乐趣。
我仍然不确定错误的含义是什么,或者如何开始排除故障和修复它。

我可以告诉我,更新 Near config.yml 和 security.yml 与上述捆绑包版本的文档是内联的。我已经放弃了我的自定义提供程序。我仍然遇到同样的错误。我包含了指向 pastebin 的链接,希望有人能发现我错过的东西。

我仍在研究 Symfony 通常如何/在何处设置标题,特别是在哪里设置 login_check 的标题。欢迎反馈:)

4

1 回答 1

0

我需要为每种登录类型指定一个唯一的 check_path。

#security.yml
firewalls:
    main:
        form_login:
            ...
            check_path: /login_check
        fos_facebook:
            ...
            check_path: /loginFb
        bit_google:
            ...
            check_path: /loginGoogle

并添加匹配的路线:

#routing.yml
_security_check:
    pattern:  /loginFb

_security_google:
    pattern:  /loginGoogle
于 2013-11-06T08:49:06.523 回答