→ 如有资源无法下载,请第一时间联系站长QQ:23467321处理!诚信让我们共赢!
→ 为更好的沟通和解决用户需求,建议新老用户都采用QQ邮箱来注册账号!
使用织梦搭建网站的过程中,在官网下载的dede后台程序,在后台文件管理器中修改php或者css文件,保存之后会出现DedeCMS:CSRF Token Check Failed这样一个提示,无法保存修改的文件,那么DedeCMS:CSRF Token Check Failed到底是什么意思呢?怎么去解决呢?
CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。出现DedeCMS:CSRF Token Check Failed!,由于您重新打开了一个需要CSRF校验的表单页面。现在我们去解决这个问题。常见的有两种情况,下面分别说下处理方法:
第一种情况:
织梦后台-模块-文件管理器,修改文件会报CSRF Token Check Failed,这是官方程序的一个BUG。
修改方法:打开 /dede/file_manage_view.php 找到
$path_parts = pathinfo($filename);
在它下面一行加入
$GLOBALS['token'] = make_hash();
不能直接在网站后台[文件管理器]里修改,它会一直提示这个,你是修改不成功的!
要么用FTP下载下面这个文件到本地电脑修改,要么在服务器上修改。
如果你的织梦程序是在线升级后出现这个的话,那是升级不完整引起的,备份数据和整站文件,从官网下载最新程序包,替换后台文件夹和include文件夹。
第二种情况:
在dedecms网站后台修改文件,在保存时出现DedeCMS:CSRF Token Check Failed!这样的提示,导致我们无法成功修改文件。出现DedeCMS:CSRF Token Check Failed!,由于您重新打开了一个需要CSRF校验(跨站请求伪造)的表单页面。下面教大家一种解决这个问题的可行的方法。
我们在网站后台修改一些辅助插件时,比如我这里修改辅助插件里面的广告管理里面的hotwords,修改之后在保存的时候,提示了DedeCMS:CSRF Token Check Failed!。
在网站中找到config.php文件,正常路径为dede/config.php,如果dede已经被你修改了,那么就是你修改后的文件路径中。
打开config.php文件,在69行的地方,我们就能看到DedeCMS:CSRF Token Check Failed!这样的提示语。
我们在config.php的65行处添加“return;”,也就是在“global $token;”前面加上“return;”。变成如图所示。修改之后记得保存。
现在便可以了,我们返回网站测试一下,看看是否成功了。我们再去修改网站里面的内容,便不会出现DedeCMS:CSRF Token Check Failed!,而且如图提示“成功更改一侧广告管理”。
注意事项:为了网站安全,我们在修改完之后,在平时可以把“return;”去掉,我们在需要修改相关文件时出现了“DedeCMS:CSRF Token Check Failed!”再加上“return;”。