织梦后台CSRF Token Check Failed解决方法

使用织梦搭建网站的过程中,在官网下载的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校验(跨站请求伪造)的表单页面。下面教大家一种解决这个问题的可行的方法。

  

image.png


  我们在网站后台修改一些辅助插件时,比如我这里修改辅助插件里面的广告管理里面的hotwords,修改之后在保存的时候,提示了DedeCMS:CSRF Token Check Failed!。

  

image.png


  在网站中找到config.php文件,正常路径为dede/config.php,如果dede已经被你修改了,那么就是你修改后的文件路径中。

  

image.png


  打开config.php文件,在69行的地方,我们就能看到DedeCMS:CSRF Token Check Failed!这样的提示语。

  

image.png


  我们在config.php的65行处添加“return;”,也就是在“global $token;”前面加上“return;”。变成如图所示。修改之后记得保存。

  

image.png


  现在便可以了,我们返回网站测试一下,看看是否成功了。我们再去修改网站里面的内容,便不会出现DedeCMS:CSRF Token Check Failed!,而且如图提示“成功更改一侧广告管理”。  

image.png

注意事项:为了网站安全,我们在修改完之后,在平时可以把“return;”去掉,我们在需要修改相关文件时出现了“DedeCMS:CSRF Token Check Failed!”再加上“return;”。


转载请说明出处
红帽SEO工作室 » 织梦后台CSRF Token Check Failed解决方法

红帽SEO工作室 - 专注山西太原网站建设SEO优化外包服务!

查看演示 网店购买
嘿,欢迎咨询