Php 记住我cookies会被删除symfony2
我正试图使用所述的默认机制配置symfony的记忆我功能;但无法使它工作 名为REMEMBERME的Cookie已创建,但设置为deleted,其过期日期为1970。这就是为什么我认为membermefunction不起作用的原因。然而,当我在security.yml中使用(always_memory_me:true)时,代码运行良好,但不符合我的目的。使用(always_memory_me:true),即使用户未选中UI中的“记住我”复选框,也会创建cookie 非常感谢您的帮助 我使用的是2.3.7版 这是我完整的security.yml文件:Php 记住我cookies会被删除symfony2,php,symfony,cookies,Php,Symfony,Cookies,我正试图使用所述的默认机制配置symfony的记忆我功能;但无法使它工作 名为REMEMBERME的Cookie已创建,但设置为deleted,其过期日期为1970。这就是为什么我认为membermefunction不起作用的原因。然而,当我在security.yml中使用(always_memory_me:true)时,代码运行良好,但不符合我的目的。使用(always_memory_me:true),即使用户未选中UI中的“记住我”复选框,也会创建cookie 非常感谢您的帮助 我使用的是2
security:
firewalls:
main:
pattern: ^/
anonymous: ~
remember_me:
key: "%secret%"
lifetime: 31536000 # a year
domain: ~
path: /
remember_me_parameter: _remember_me
#always_remember_me: true
form_login:
login_path: _my_login
check_path: _my_login_check
always_use_default_target_path: true
default_target_path: /out/homepage
remember_me: true
logout:
path: _my_logout
target: _my_login
access_control:
- { path: ^/admin, roles: ROLE_ADMIN }
- { path: ^/login$, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/, roles: IS_AUTHENTICATED_REMEMBERED }
providers:
chain_provider:
chain:
providers: [in_memory, user_db]
in_memory:
memory:
users:
user: { password: user, roles: 'ROLE_USER' }
admin: { password: admin, roles: ['ROLE_ADMIN', 'ROLE_USER'] }
user_db:
entity: {class: ProjectName\StoreBundle\Entity\User, property: username}
encoders:
ProjectName\StoreBundle\Entity\User:
algorithm: sha1
iterations: 1
encode_as_base64: false
Symfony\Component\Security\Core\User\User: plaintext
LoginController.php
class LoginController extends Controller
{
/**
* @Route("/login", name="_my_login")
* @Template()
*/
public function loginAction()
{
$request = $this->getRequest();
$session = $request->getSession();
// get the login error if there is one
if ($request->attributes->has(SecurityContext::AUTHENTICATION_ERROR)) {
$error = $request->attributes->get(
SecurityContext::AUTHENTICATION_ERROR
);
} else {
$error = $session->get(SecurityContext::AUTHENTICATION_ERROR);
$session->remove(SecurityContext::AUTHENTICATION_ERROR);
}
return array(
// last username entered by the user
'last_username' => $session->get(SecurityContext::LAST_USERNAME),
'error' => $error,
);
}
/**
* @Route("/login_check", name="_my_login_check")
*/
public function loginCheckAction()
{
}
我想复选框的名称不正确。它应该将“name”属性设置为“\u memory\u me”,以实现神奇的效果。您可以发布表单模板的内容吗?我想复选框的名称不正确。它应该将“name”属性设置为“\u memory\u me”,以实现神奇的效果。您可以发布表单模板的内容吗?我在输入标记中添加了value属性。拆下后,它暂时可以工作。:)
记得我吗
我在输入标记中添加了value属性。拆下后,它暂时可以工作。:)
记得我吗
我也面临同样的问题。Memberme cookie在登录时设置。现在,当会话到期并且我重新加载站点时,服务器发送响应头以删除该cookie。但我不知道为什么?它应该只在注销时删除,但在会话到期时也会删除。任何帮助都将不胜感激。我也面临同样的问题。Memberme cookie在登录时设置。现在,当会话到期并且我重新加载站点时,服务器发送响应头以删除该cookie。但我不知道为什么?它应该只在注销时删除,但在会话到期时也会删除。任何帮助都将不胜感激。我认为这不是问题所在。请阅读我上面的评论。我觉得symfony后端有问题。我不认为这是问题所在。请阅读我上面的评论。我觉得symfony后端有一些问题。
<input type="checkbox" id="remember_me" name="_remember_me" checked /> Remember me