2016-06-10 67 views
1

Symfony的依赖3.0.7Symfony3:服务“security.firewall.map.context.main”对一个不存在的服务“security.csrf.token_manager”

我想全局禁用CSRF保护:

framework: 
    csrf_protection: false 

然后我有例外:

的Symfony \分量\ DependencyInjection \异常\ ServiceNotFoundException的:服务 “security.firewall.map.context.main” 对一个不存在的依赖服务“security.csrf.t oken_manager”。

但是,如果我直接在代码中使用它,服务“security.csrf.token_manager”存在。

完整的错误回溯:

的Symfony \分量\ DependencyInjection \异常\ ServiceNotFoundException的: “security.firewall.map.context.main” 对一个不存在的服务依赖的服务“security.csrf .token_manager”。

/var/www/studio.lc/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php:58 /var/www/studio.lc/vendor/symfony/symfony/ src/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php:42 /var/www/studio.lc/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php:53 /var/www/studio.lc/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php:51 /var/www/studio.lc/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection /Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php:42 /var/www/studio.lc/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php:36 /var/www/studio.lc/vendor/symfony/symfony/src/Symfony /Component/DependencyInjection/Compiler/Compiler.php:104 /var/www/studio.lc/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/ContainerBuilder.php:545 /var/www/studio.lc /vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:477 /var/www/studio.lc/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:117 /var/www/studio.lc/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Test/KernelTestCase.php:146 /var/www/studio.lc/vendor/symfony/symfony/src/Symfony/ Bundle/FrameworkBundle/Test/WebTestCase.php:33 /var/www/studio.lc/ src/Studio/Bundle/AdminBundle/Tests/Controller/SecuredAreaControllerWebTestCase.php:21

我该如何解决它?

+0

你解决了吗?即时通讯有同样的问题 – Pipe

回答

1

这是config.yml语法如下:

csrf_protection: 
    enabled: false 

如果你只是去你security.yml文件,并删除从form_login指令的csrf_provider或csrf_token_generator。

相关问题