|
解决dedecms图片在附件设置二级域名后无法显示的方法
下面开始讲一下二级域名下文章/商品内容中的图片无法显示的问题,在这里我要指出的是我看了一下网站的好多解决方法后归纳得出:
include/inc_arclist_view.php 594行
include/inc/inc_fun_spgetarclist.php 195行
$row['litpic', = $row['siteurl',.$row['litpic',;替换这一行为
$row['litpic', = $row['litpic',;
这个修改方法我就是在网上看到的。当然不能排除这个方法有效,但是我没有用,为什么呢?这个文件改的是include里面的核心文件,所以我放弃,因为我要考虑到dedecms系统的完整性,这个很明显不能解决我的问题。
1、我们可以看到 DedeCms系统配置参数->其它选项中有两个配置选项:[附件目录是否绑定为指定的二级域名 | 附件目录的二级域名,很明显示官方早就注意到了在二级域名下的种种问题。
2、打开include/FCKeditor/editor/dialog/目录下的文件:“dede_image.php”。
将这个:
if($cfg_multi_site=='N')
{
$imgHtml .= "
[img][/img]
\r\n";
}
else
{
if(empty($cfg_basehost)) $cfg_basehost = 'http://'.$_SERVER["HTTP_HOST",;
$imgHtml .= "
[img][/img]
\r\n";
}
改成下面:
if($GLOBALS['cfg_addon_domainbind',){$addon_domain = $GLOBALS['cfg_addon_domain',;}
if($cfg_multi_site=='N')
{
$imgHtml .= "
[img][/img]
{$addon_domain}{$imgsrcValue}\" width=\"$imgwidthValue\" border=\"0\" height=\"$imgheightValue\" alt=\"$altname\" style=\"cursor:pointer\" onclick=\"window.open('{$addon_domain}{$urlValue}')\" />
\r\n";
}
else
{
if(empty($cfg_basehost)) $cfg_basehost = 'http://'.$_SERVER["HTTP_HOST",;
$imgHtml .= "
[img][/img]
{$addon_domain}{$imgsrcValue}\" width=\"$imgwidthValue\" border=\"0\" height=\"$imgheightValue\" alt=\"$altname\" style=\"cursor:pointer\" onclick=\"window.open('{$addon_domain}{$urlValue}')\" />
\r\n";
}
现在上传的图片正常 了,接下来我们要考虑的是下面不是有一个“浏览服务器”的按纽吗,[图片/随便/flash/多媒体,都有这个功能。
先打开include/dialog/目录下的 select_images.php、select_media.php、select_soft.php、select_templets.php 4个文件
将下面的代码:
$activeurl = '..'.$activepath;
改成:
if($GLOBALS['cfg_addon_domainbind',){$addon_domain = $GLOBALS['cfg_addon_domain',;}
$activeurl = '..'.$addon_domain.$activepath;
至此完成所以的更改,这样更改是在保证dedecms系统的完整性上改的,只有内容中的图片才会变。
当然前提是你开启:附件目录是否绑定为指定的二级域名 并且指定二级域名地址。如果不开启就会和你原来的是一样的。
|
|