使用织梦做网站,很多人都会遇到这个问题,当绑定二级域名时候,其文章里面的图片就会不显示,这个问题其实已经很老了,在dedecms的论坛里也有很多人提问,可惜官方人员一直都没有解决好这个问题。
失败办法一:
在网上搜了很多的办法,起初时候使用在网页的<head>里面加<base href=http://www.25ysj.com>
这样图片虽然使用的是相对路径,也会继承base的根网址,而非当前路径,图片就可以显示了,但是后来才发现问题来了,由于使用了头部命名基网址,导致网页内所有的绝对路径都继承了基网址,产生很多死链,比如下一页 上一篇 下一篇 链接都打不开了,(还有就是造成此网页使用的友荐获取不了缩略图,起初一直是以为是友荐代码的问题)。
失败办法二:
使用301重定向,例如 使得http://news.xxxxx.com/uploads 跳转到http://www.xxxxx.com/uploads
这个方法倒是可以解决问题,但是使用301无疑加重了服务器的负担,由于每个页面都有进行301跳转,对服务器的消耗是很大的。所以这个方法,没有实际操作,直接pass掉了。
最简单的办法:
第一步:
找到 \include\dialog\select_images_post.php 第108行
$fileurl = $activepath.'/'.$filename;
换成:
$fileurl = $cfg_cmsurl.$activepath.'/'.$filename;
这样以后再加文章填图片,都会是绝对路径
第二步:
进后台-核心-批量维护-数据库教程内容替换
选择表 dede_addonarticle 字段 body
被替换内容: src="/uploads/
替换为:src="http://www.xxxxxx.com/uploads/
(注:www.xxxxx.com要改成你的域名)
这样重新生成文档,以前的文章图片都会显示了