DEDECMS二级域名图片附件无法显示-图片绝对网址设置不生效的解决方法
在用DEDECMS做一个网站的过程中,需要将某个栏目绑定二级域名,过程中遇到一个问题,就是所有的图片都无法显示。
查看源代码,发现dedecms的图片地址默认的是相对链接地址!这样浏览器访问的过程中就会将地址自动补全为二级域名开头
比如其中有一段内容是
<img alt="" src="/uploads/170622/1-1F6221431393M.png" style="width: 957px; height: 446px;" />
实际图片存放的地址应该是https://www.bnxb.com/uploads/170622/1-1F6221431393M.png
在二级域名访问时候浏览器就将相对链接变成了https://host.bnxb.com/uploads/170622/1-1F6221431393M.png 因此无法显示
这个情况发生在我已经在后台系统设置-核心设置中启用了 (是/否)支持多站点,开启此项后附件、栏目连接、arclist内容启用绝对网址 的情况下,因此只能修改程序文件来实现。
要完美的解决这个问题,有两个问题需要修改。一是今后上传的图片都自动变成绝对地址,这样所有的二级域名包括绑定的二级目录都可以自动访问了;二是以前上传的图片修改为绝对地址,否则以前的图片还是不能访问的。
完美解决dedecms绑定二级域名(包括二级目录绑定域名)图片附件无法显示-更换所有图片和附件地址为绝对地址的方法:
特别提醒:对程序和数据库做任何修改前请都先备份,出问题了好还原!一定要备份哦!
1、修改图片上传路径为绝对地址:(从修改起开始生效,以前的图片无效)
找到 \include\dialog\select_images_post.php 第108行(行数不一定准确,有的软件打开有空行)
$fileurl = $activepath.'/'.$filename;
换成:
$fileurl = $cfg_cmsurl.$activepath.'/'.$filename;
修改后,所有上传的图片都是绝对地址保存。但是以前的文章的图片还是相对地址的。
2、数据库批量替换以前的图片地址为绝对地址:
特别提醒:新手对数据库操作要小心,替换前一定要记得备份然后再操作,否则出问题了后悔莫及啊!dedecms可以在后台备份数据。
操作方法:织梦后台——核心——批量维护——数据库内容替换:
然后选择表dede_addonarticle(一般就是第一个表) 字段 body(存放文章正文的字段)。
被替换内容: src="/uploads/
替换为:src="https://www.bnxb.com/uploads/(换成你自己的域名)
请仔细检查上量替换的内容,防止有误,操作最好截图,出错了知道如何替换回去。
然后替换即可!替换后假如是静态内容,可以生成一下所有文章,动态内容无需生成。
数据库替换后,建议检查以前文章的图片地址是否变成了绝对地址,以及地址是否出错!假如有问题,请还原数据库。
好了,完成这一步,以后你所有的二级域名都可以自动显示主域名的所有图片了!
查看源代码,发现dedecms的图片地址默认的是相对链接地址!这样浏览器访问的过程中就会将地址自动补全为二级域名开头
比如其中有一段内容是
<img alt="" src="/uploads/170622/1-1F6221431393M.png" style="width: 957px; height: 446px;" />
实际图片存放的地址应该是https://www.bnxb.com/uploads/170622/1-1F6221431393M.png
在二级域名访问时候浏览器就将相对链接变成了https://host.bnxb.com/uploads/170622/1-1F6221431393M.png 因此无法显示
这个情况发生在我已经在后台系统设置-核心设置中启用了 (是/否)支持多站点,开启此项后附件、栏目连接、arclist内容启用绝对网址 的情况下,因此只能修改程序文件来实现。
要完美的解决这个问题,有两个问题需要修改。一是今后上传的图片都自动变成绝对地址,这样所有的二级域名包括绑定的二级目录都可以自动访问了;二是以前上传的图片修改为绝对地址,否则以前的图片还是不能访问的。
完美解决dedecms绑定二级域名(包括二级目录绑定域名)图片附件无法显示-更换所有图片和附件地址为绝对地址的方法:
特别提醒:对程序和数据库做任何修改前请都先备份,出问题了好还原!一定要备份哦!
1、修改图片上传路径为绝对地址:(从修改起开始生效,以前的图片无效)
找到 \include\dialog\select_images_post.php 第108行(行数不一定准确,有的软件打开有空行)
$fileurl = $activepath.'/'.$filename;
换成:
$fileurl = $cfg_cmsurl.$activepath.'/'.$filename;
修改后,所有上传的图片都是绝对地址保存。但是以前的文章的图片还是相对地址的。
2、数据库批量替换以前的图片地址为绝对地址:
特别提醒:新手对数据库操作要小心,替换前一定要记得备份然后再操作,否则出问题了后悔莫及啊!dedecms可以在后台备份数据。
操作方法:织梦后台——核心——批量维护——数据库内容替换:
然后选择表dede_addonarticle(一般就是第一个表) 字段 body(存放文章正文的字段)。
被替换内容: src="/uploads/
替换为:src="https://www.bnxb.com/uploads/(换成你自己的域名)
请仔细检查上量替换的内容,防止有误,操作最好截图,出错了知道如何替换回去。
然后替换即可!替换后假如是静态内容,可以生成一下所有文章,动态内容无需生成。
数据库替换后,建议检查以前文章的图片地址是否变成了绝对地址,以及地址是否出错!假如有问题,请还原数据库。
好了,完成这一步,以后你所有的二级域名都可以自动显示主域名的所有图片了!
免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。
来源:网友投稿 关注:
时间:2018-09-12 15:11
☉首先声明,只要是我们的vip会员所有源码均可以免费下载,不做任何限制(了解更多)
☉本站的源码不会像其它下载站一样植入大量的广告。为了更好的用户体验以后坚持不打水印
☉本站只提供精品织梦源码,源码在于可用,不在多!!希望在这里找到你合适的。
☉本站提供的整站织梦程序,均带数据及演示地址。可以在任一源码详情页查看演示地址
☉本站所有资源(包括源码、模板、素材、特效等)仅供学习与参考,请勿用于商业用途。
☉如有其他问题,请加网站客服QQ进行交流。
☉本站的源码不会像其它下载站一样植入大量的广告。为了更好的用户体验以后坚持不打水印
☉本站只提供精品织梦源码,源码在于可用,不在多!!希望在这里找到你合适的。
☉本站提供的整站织梦程序,均带数据及演示地址。可以在任一源码详情页查看演示地址
☉本站所有资源(包括源码、模板、素材、特效等)仅供学习与参考,请勿用于商业用途。
☉如有其他问题,请加网站客服QQ进行交流。
相关织梦教程:
- dedecms SQL注入漏洞 member/album_add.php 修复
- dedecms cookies泄漏导致SQL漏洞 /member/article_add
- Windows虚拟主机指定目录禁用脚本执行权限方法
- 西部数码虚拟主机设置禁止脚本执行权限
- 阿里云主机设置织梦程序禁止脚本执行权限及禁止写入
- dedecms织梦导致CPU峰值现象的解决办法
- 织梦程序网站被挂马或快照劫持终极解决办法
- 阿里云提醒/member/reg_new.php注入漏洞解决办法
- 织梦安全:更改plus名称
- 织梦栏目属性增加链接rel、nofollow和新窗口target
- 织梦问答模块PHP7报错解决方法
- dedecms解决移动端首页不自动更新问题