Symfony 3 - CSRF令牌无效。请尝试重新提交表单

时间:2016-11-16 20:49:10

标签: csrf symfony

首先,我已经尝试找到与我的问题相关的另一个主题,因为它已经存在很多:p。

但我无法弄清楚为什么Symfony一直告诉我......:

The CSRF token is invalid. Please try to resubmit the form

我正在使用常规表单,而奇怪的部分是它可以在另一台计算机上运行但不在此计算机上(除了缓存/会话/日志文件之外,文件是相同的)。

  • 我同时使用 {{form_rest(form)}} {{form_end(form)}} twig变量。我增加了php.ini的 max_input_vars upload_max_filesize 属性。
  • 我的数据库是最新的。
  • 隐藏的_token输入显示在html。
  • 我清除了我的应用和浏览器缓存。
  • 由于这是一个本地网站,我只是授予所有我的文件夹/文件777权限..

编辑:如果我替换(app / config / config.yml):

save_path:   "%kernel.root_dir%/../var/sessions/%kernel.environment%"

save_path: ~

它有效..但我不知道这会带来什么后果?会话是根据php.ini文件存储的吗?那么我可以使用此设置而不是前一个设置而没有任何问题吗?

否则,我完全不知道可能导致错误的原因。

感谢您的帮助! :)

2 个答案:

答案 0 :(得分:1)

save_path:   "%kernel.root_dir%/../var/sessions/%kernel.environment%"

应该没问题。只需确保您的var/sessions文件夹存在且可写

mkdir -p var/sessions
chmod 755 var/sessions

var/cachevar/logs必须如此。

答案 1 :(得分:0)

我有相同的pb

第一次我使用的是使用apache的xampp(工作正常 - 无需更改)

第二次我用nginx(这里是pb)移动了ubuntu

我删除了sessions/cache ->nothing

而是改变了" save_path:〜" 及其工作