3

Symfony プロジェクトを 2.2 から 2.3 にアップグレードしようとすると、次のパッケージもアップグレードする必要があります。

  • JMS/SecurityExtraBundle 1.4.* から 1.5.* へ
  • JMS/DIExtraBundle 1.3.* から 1.4.* へ
  • 1.3.1 から 1.3.* への FOS/UserBundle
  • FOS/FacebookBundle 1.1.0 から 1.2.*

composer update と cache:clear を正常に実行した後、プロジェクトのメイン ページは正常に読み込まれますが、通常のログイン フォームからログインしようとすると、次のエラーが表示されます。

サーバーから重複したヘッダーを受信しました サーバーからの応答に重複したヘッダーが含まれていました。この問題は、通常、Web サイトまたはプロキシの構成ミスが原因です。この問題を解決できるのは、Web サイトまたはプロキシの管理者だけです。エラー 350 (net::ERR_RESPONSE_HEADERS_MULTIPLE_LOCATION): 複数の異なる Location ヘッダーを受信しました。これは、HTTP 応答分割攻撃から保護するために許可されていません。

ドキュメントに変更がないか調べてみましたが、まだ満足していません。
エラーが何を意味するのか、またはトラブルシューティングと修正を開始する方法はまだわかりません.

私の config.yml と security.yml は、上記のバンドルのバージョンのドキュメントとインラインであることがわかりますカスタムプロバイダーを捨てました。私はまだ同じエラーが発生しています。誰かが私が見逃したものを見つけてくれることを期待して、ペーストビンへのリンクを含めています.

私はまだ、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 に答える