如何自定义表单登录吗 编辑该页面 警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 2.0,不再维护。 读这个页面的更新版本Symfob娱乐下载ony 6.3(当前的稳定版本)。 表单登录身份验证是一种常见的、灵活的、在Symfony2处理身份验证方法。ob娱乐下载几乎每一个方面的形式登录可以定制。完整的,默认配置下一节所示。 安全配置参考。一些更有趣的选项如下所示。 http://www.example.com/admin/post/18/edit,之后她成功登录时,最终会被送回http://www.example.com/admin/post/18/edit。这是通过将请求的URL存储在会话中。如果没有出现在URL会话(也许是用户直接登录页面),然后用户重定向到缺省页面,这是/在默认情况下(即主页)。在很多方面你可以改变这一行为。 /管理使用以下配置: YAML XML PHP 1 2 3 4 5 6 7 # app / config / security.yml安全:防火墙:主要:form_login:#……default_target_path:/管理 1 2 3 4 5 6 7 8 < !——app / config /安全。xml - - ><配置><防火墙><登录default_target_path=“/管理”/ >< /防火墙>< /配置> 1 2 3 4 5 6 7 8 9 10 11 12 13 / / app / config / security.php美元容器- >loadFromExtension (“安全”,数组(“防火墙”= >数组(“主要”= >数组(/ /……“form_login”= >数组(/ /……“default_target_path”= >“/管理”))))); 现在,当没有会话中设置URL,用户将被送到/管理。 always_use_default_target_path选择正确的: YAML XML PHP 1 2 3 4 5 6 7 # app / config / security.yml安全:防火墙:主要:form_login:#……always_use_default_target_path:真正的 1 2 3 4 5 6 7 8 < !——app / config /安全。xml - - ><配置><防火墙><登录always_use_default_target_path=“真正的”/ >< /防火墙>< /配置> 1 2 3 4 5 6 7 8 9 10 11 12 13 / / app / config / security.php美元容器- >loadFromExtension (“安全”,数组(“防火墙”= >数组(“主要”= >数组(/ /……“form_login”= >数组(/ /……“always_use_default_target_path”= >真正的))))); HTTP_REFERER相反,因为这往往会是相同的。你可以通过设置use_referer为真(默认值为false): YAML XML PHP 1 2 3 4 5 6 7 # app / config / security.yml安全:防火墙:主要:form_login:#……use_referer:真正的 1 2 3 4 5 6 7 8 < !——app / config /安全。xml - - ><配置><防火墙><登录use_referer=“真正的”/ >< /防火墙>< /配置> 1 2 3 4 5 6 7 8 9 10 11 12 13 / / app / config / security.php美元容器- >loadFromExtension (“安全”,数组(“防火墙”= >数组(“主要”= >数组(/ /……“form_login”= >数组(/ /……“use_referer”= >真正的))))); _target_path。例如,对一些定义的URL重定向账户路线,使用以下: 嫩枝 PHP 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 {# src / Acme / SecurityBundle /资源/视图/安全/ login.html。树枝#}{%如果错误%}<div>{{错误。消息}}< /div>{%endif%}<形式行动=”{{路径(login_check)}}”方法=“职位”><标签为=“用户名”>用户名:< /标签><输入类型=“文本”id=“用户名”的名字=“_username”价值=”{{last_username}}”/ ><标签为=“密码”>密码:< /标签><输入类型=“密码”id=“密码”的名字=“_password”/ ><输入类型=“隐藏”的名字=“_target_path”价值=“账户”/ ><输入类型=“提交”的名字=“登录”/ >< /形式> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 < !——src / Acme / SecurityBundle /资源/视图/安全/ login.html。php - - >< ? php如果(美元错误):? ><div>< ? php回声美元错误- >getMessage ()? >< /div>< ? phpendif;? ><形式行动=“< ?php echo $视图(“路由器”)- >生成(login_check) ? > "方法=“职位”><标签为=“用户名”>用户名:< /标签><输入类型=“文本”id=“用户名”的名字=“_username”价值=“< ?php echo $ last_username ? > "/ ><标签为=“密码”>密码:< /标签><输入类型=“密码”id=“密码”的名字=“_password”/ ><输入类型=“隐藏”的名字=“_target_path”价值=“账户”/ ><输入类型=“提交”的名字=“登录”/ >< /形式> 现在,用户将被重定向到隐藏表单字段的值。value属性可以是相对路径,绝对URL或路线的名字。你甚至可以改变隐藏表单字段的名称通过改变吗target_path_parameter选择另一个值。 YAML XML PHP 1 2 3 4 5 6 # app / config / security.yml安全:防火墙:主要:form_login:target_path_parameter:redirect_url 1 2 3 4 5 6 7 8 < !——app / config /安全。xml - - ><配置><防火墙><登录target_path_parameter=“redirect_url”/ >< /防火墙>< /配置> 1 2 3 4 5 6 7 8 9 10 / / app / config / security.php美元容器- >loadFromExtension (“安全”,数组(“防火墙”= >数组(“主要”= >数组(“form_login”= >数组(“target_path_parameter”= > redirect_url))))); YAML XML PHP 1 2 3 4 5 6 7 # app / config / security.yml安全:防火墙:主要:form_login:#……failure_path:/ login_failure 1 2 3 4 5 6 7 8 < !——app / config /安全。xml - - ><配置><防火墙><登录failure_path=“login_failure”/ >< /防火墙>< /配置> 1 2 3 4 5 6 7 8 9 10 11 12 13 / / app / config / security.php美元容器- >loadFromExtension (“安全”,数组(“防火墙”= >数组(“主要”= >数组(/ /……“form_login”= >数组(/ /……“failure_path”= > login_failure)))));