Symfony2ファイアウォールコンポーネントに問題が発生しました。symfony2のファイアウォールには年齢がかかります
私は主にAJAXリクエスト中に発生していることに気がつきました。特に、doctrineでLIKE%..%ステートメントを使ってエンティティを検索したとき(重要なことは分かりませんでしたが、 。
ちょっと後で(1または2秒後に)同じURLを呼び出すと、ファイアウォールの処理に通常の時間がかかるようになります。
私は認証に外部データソースを使用していません。すべてPostgreSQLに格納されています。以下のタイムラインで
ルック:
timeline http://f.cl.ly/items/1a2Y0T062E0H2Z3t0g27/Zrzut%20ekranu%202012-11-19%20o%2018.26.11.png
は、直接、ファイアウォールをデバッグする方法はありますか?
私の設定は次のようになります。私はSymfony\SecurityBundle
とJMSSecurityExtraBundle
を使用しています
security:
firewalls:
admin_area:
provider: db_users
pattern: ^/admin
anonymous: ~
form_login:
login_path: /admin/login
check_path: /admin/login-check
logout:
path: /admin/logout
target: /admin
switch_user: { role: ROLE_SUPERADMIN, parameter: _become_user }
secured_area:
pattern: ~
anonymous: ~
http_basic:
realm: "Secured Demo Area"
access_control:
- { path: ^/admin/clip-manager/clip/encode/*, roles: IS_AUTHENTICATED_ANONYMOUSLY, ip: 127.0.0.1 }
- { path: ^/admin/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin/login-check, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin, roles: [ROLE_ADMIN_LOGIN, ADMIN_AREA] }
providers:
db_users:
entity: { class: Webility\Bundle\AppUserBundle\Entity\User, property: username }
encoders:
Webility\Bundle\AppUserBundle\Entity\User:
algorithm: sha256
iterations: 3
encode_as_base64: false
acl:
connection: default
。
データベースサーバーに実際のIPアドレス(ホスト名ではなく)を使用してみます。 http://12wiki.blogspot.com.es/2012/11/why-does-symfony-2-firewall-take-so.html – Cerad
同時に処理するAJAXリクエストは多数ありますか?それは唯一のものですか? – AlterPHP
はい、それは唯一のものです。しかし...それはライブ検索です。 (ユーザーが入力を停止したときに100msの遅延で)ユーザーの種類として検索し、以前のAJAX要求はすべて中止されます。しかし、実際には要求は中止されても、まだサーバーによって処理されている可能性があります。 –