Symfony 3.4.20 和 FOSUserBundle - 'remember me' 不工作

Symfony 3.4.20 and FOSUserBundle - 'remember me' not working

security.yml中进行如下相关配置:

security:
    firewalls:
        # disables authentication for assets and the profiler, adapt it according to your needs
        dev:
            pattern: ^/(_(profiler|wdt)|css|images|js)/
            security: false

        main:
            pattern:
            form_login:
                provider: fos_userbundle
                csrf_token_generator: security.csrf.token_manager

            logout:       true
            anonymous:    true
            logout_on_user_change: true
            remember_me:
                secret: '%secret%'
                secure: true
                httponly: true
                lifetime: 31536000

记住我会话令牌仅在浏览器会话期间有效,而不是在配置中指定的年份。这可能是由于 secure: true 设置造成的吗?我的开发机器没有安装任何 TLS,这会是罪魁祸首吗?还是我应该寻找其他东西?从 the documentation 来看,我似乎设置正确,所以我有点不知所措。

原来我对 secure: true 的直觉是正确的。我在测试时设置为false,cookie是正确的。由于我的开发机器没有 SSL/TLS,如果配置了安全 cookie,它就无法发送。它应该可以在我的生产服务器上运行,因为我确实在那个环境中工作 SSL/TLS。

虽然晚了,但也许对某些人有帮助。
form_login: 下添加 require_previous_session: false 选项解决了我的问题。
就这样
form_login:
require_previous_session: false
根据https://symfony.com/doc/3.1/reference/configuration/security.html
默认情况下,在提交身份验证请求之前必须存在会话。所以,如果要实现remember me功能,需要设置require_previous_session为false