织梦默认状态下,友情连接上传的图片在后台不能正常显示,本文就讲解一下友情链接图片不显示的解决方法。
1、友情链接图片不显示的现象
织梦默认状态下,友情连接上传的图片在后台和前台都是不能正常显示的,之后查看代码,发现图片的路径有问题,本来应该显示/upload/flink/ ,却显示了/upload/fli<x>nk/ ,所以图片在友情连接后台和前台都不能正常显示,如下图:
2、问题的原因
问题的原因是,/include/datalistcp.class.php 因为这个文件里包含了防止XSS漏洞攻击的代码里边包含了一个'link' 所以就自动增加了一个<x> 。
3、解决方法
方法一:
打开/include/datalistcp.class.php
搜索:
$replacement = substr($ra[$i], 0, 2).'<x>'.substr($ra[$i], 2);
修改为:
$replacement = substr($ra[$i], 0, 2)."".substr($ra[$i], 2);
这样就不会出现flin<x>k 这样的问题了。注意更改前先备份datalistcp.class.php 文件。
方法二:
上面的方法是要更改/include/datalistcp.class.php ,include是系统文件,如果担心更改系统文件后会导致安全问题,我们可以更改友情链接图片的存放目录,
方法如下:
1、打开:根目录/dede/friendlink_add.php 这个文件的27行左右
$imgurl = $cfg_medias_dir."/flink";
2、打开:根目录/dede/friendlink_edit.php 61-62行
$request->MoveUploadFile('logoimg', DEDEROOT.'/d/file/uploads/flink/'.$request->GetFileInfo('logoimg', 'name'));$logo = $cfg_cmspath.'/d/file/uploads/flink/'.$request->GetFileInfo('logoimg', 'name');
3、将以上flink改成其他任意名字即可(为了安全起见请保存源文件)
为了安全,建议使用方法二,更改友情链接图片存放路径,并且注意更改系统文件前,先备份文件。
完成上面的操作后,在织梦友情链接后台就可以正常显示图片了。