cakephp 2.6安全请求从另一个角度黑洞

cakephp 2.6 security request black-holed from another view

我对 cakephp 中的黑洞请求很感兴趣,但我没有找到解决我的问题的有效方法。

在我的应用程序中,我在多个地方使用登录表单,因此我创建了一个可重用元素。喜欢:

echo $this->Form->create('User', array('class' => 'form-horizontal', 'role' => 'form', 'url' => array('controller' => 'users', 'action' => 'login')));
echo $this->Form->input('email', array('label' => false, 'class' => 'form-control'));
echo $this->Form->input('password', array('label' => false, 'class' => 'form-control'));
echo $this->Form->end();

(注意: url 控制器和表单中的动作)

如果我在 foo.com/users/login 中单击表单的发送按钮,我将成功重定向到 users/view 或返回到 users/login 失败。之后我按浏览器页面 return 按钮返回表单并再次单击发送按钮一切正常并再次检查登录。但是如果我在 foo.com/pages/home 中做同样的事情,我会在第二个继续中收到请求黑洞异常(第一个工作正常)。

如果我停用安全组件一切正常,但这不是我想要的。

我该如何防止这种情况?

我也知道安全组件默认不可用?这是真的吗?

感谢您的帮助。

安全组件阻止用户重新点击表单。 当用户按下后退按钮时,您可以使用

重新验证页面

$this->response->disableCache();