因此,我设法将 FOSFacebook 捆绑包与 FOSUser 捆绑包一起集成到我的应用程序中。现在它在我的开发服务器上正常工作,但没有一些错误,但它可以工作。
更新:因此出于某种原因,facebook 将 cookie 设置为 mysite.com.au 而不是 subdomain.mysite.com,这意味着它无法获取 cookie 并转到默认的失败页面,即 /facebook/login。
现在由于某种原因,当我将它部署到具有相同地址的实时服务器时(我正在更改我的主机文件以模拟域),当我尝试登录时,我得到“找不到“GET /facebook/login”的路由如果我尝试在开发人员上访问此页面,我会收到相同的消息,但通常它会登录我,然后将我重定向到索引。在现场它卡在 /facebook/login
这是我的security.yml
security:
encoders:
"FOS\UserBundle\Model\UserInterface": sha512
role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]
providers:
fos_userbundle:
id: fos_user.user_manager
my_fos_facebook_provider:
id: my.facebook.user
factories:
- "%kernel.root_dir%/../vendor/bundles/FOS/FacebookBundle/Resources/config/security_factories.xml"
firewalls:
public:
pattern: ^/
fos_facebook:
app_url: "(set to the apps.facebook link I have)"
server_url: "http://testbed.mysite.com/app_dev.php/"
check_path: /facebook/check
login_path: /facebook/login
default_target_path: /
provider: my_fos_facebook_provider
form_login:
success_handler: authentication_handler
failure_handler: authentication_handler
provider: fos_userbundle
anonymous: true
logout: true
access_control:
- { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/testing/secure/, role: IS_AUTHENTICATED_FULLY }
- { path: ^/admin/secure/, role: ROLE_ADMIN }
- { path: ^/account, role: IS_AUTHENTICATED_FULLY }
role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: ROLE_ADMIN
如果您需要查看任何其他文件,请告诉我
显然 /facebook/login 没有路线,但我相信它应该是这样的。任何想法的人?