超时Facebook使用hwioauth软件包登录:超时网关504

时间:2017-09-05 16:13:27

标签: symfony hwioauthbundle

嗨!

我正在厌倦了以下错误,通过HWIOAuthBundle在Facebook登录中找到了prod日志。我从未在本地主机上遇到过这个错误。它偶尔发生(并且继续发生)几次刺激。我试图在config.yml中将verify_peer设置为false,在nginx服务器上放置ipv6等等。没有解决这个问题。

这是确切的错误:

[2017-09-05 17:48:16] request.CRITICAL: Uncaught PHP Exception
HWI\Bundle\OAuthBundle\OAuth\Exception\HttpTransportException: 
"Error while sending HTTP request" at 
/home/keywinf/htdocs/www/vendor/hwi/oauth-bundle/OAuth/ResourceOwner/AbstractResourceOwner.php line 255 
{"exception":"[object] (HWI\\Bundle\\OAuthBundle\\OAuth\\Exception\\HttpTransportException(code: 28): 
Error while sending HTTP request at /home/keywinf/htdocs/www/vendor/hwi/oauth-bundle/OAuth/ResourceOwner/AbstractResourceOwner.php:255, Buzz\\Exception\\RequestException(code: 28): 
Connection timed out after 60000 milliseconds at /home/keywinf/htdocs/www/vendor/kriswallsmith/buzz/lib/Buzz/Client/Curl.php:29)"} []

config.yml

hwi_oauth:
    firewall_names: [main]

    use_referer: true

    fosub:
        username_iterations: 30
        properties:
            facebook: facebookId
        resource_owners:
            facebook:
                type:                facebook
                client_id:           "%facebook_id%"
                client_secret:       "%facebook_secret%"
                infos_url:     'https://graph.facebook.com/me?fields=id,name,first_name,last_name,picture.type(large),email,gender,birthday,location,age_range'
                scope: "email,user_friends"
            http_client:
                timeout: 60

security.yml

firewalls:
    dev:
        pattern: ^/(_(profiler|wdt)|css|images|js)/
        security: false
    api:
        pattern: ^/api/[a-z0-9](-[a-z0-9])+/
        stateless: true
        simple_preauth:
            authenticator: api_key_authenticator
        provider: api
    main:
        pattern:      ^/
        anonymous:    true
        provider:     main
        switch_user: true
        form_login:
            login_path: fos_user_security_login
            check_path: fos_user_security_check
            success_handler: acme.security.authentication_handler
            failure_handler: acme.security.authentication_handler
            always_use_default_target_path: false
            default_target_path:  /
        oauth:
            resource_owners:
                facebook:           /login/check-facebook
            login_path:        /login
            failure_path:      /login
            success_handler: acme.security.authentication_handler
            always_use_default_target_path: false
            default_target_path:  /

            oauth_user_provider:
                service: dm.user_provider
        logout:
            path:       fos_user_security_logout
            target:     /
        remember_me:
            secret:     %secret%

如果有人知道可能导致它的原因..非常感谢

1 个答案:

答案 0 :(得分:0)

好的,我得到了它,对于那些遇到同样风暴的人来说。

小心服务器上的ipv6内容。 PHP卷曲试图通过它完成它的工作,但服务器不是ipv6就绪,它最终发现回到ipv4更酷(但很长一段时间后)。我的解决方案是完全激活ipv6(DNS,conf等)。你在网上有很多有用(和简短)的例子。

玩得开心!