解决dedecms多域名和站点的绑定

2019-10-23,,

dedecms可以实现多级域名,不同域名的绑定,而且仅仅一套程序就可以搞定,这样以后用dede做站群是最好不过了,同一个主题的站,就只用一套dede来做。闲话少说,自己在网上找了很多教程,发现很多都很残旧的了,要么是老程序,要么就是不行的。

 

先分享一下在网上找的这教程,里面有一个小错误,我修改过来,下面给大家分享一下

 

DedeCMS 栏目绑定二级域名

 

第一步,在后台-->系统-->基本参数-->核心设置中,开启(是/否)支持多站点,开启此项后附件、栏目连接、arclist内容启用绝对网址: ,选择是;

 

第二步,在增加或编辑栏目的时候,在高级选项打开多站点支持:,选择是,(请一定检查是否启用了多站点!)填上你要使用的二级域名;

 

第三步,手动在空间中绑定二级域名到你的子目录;

 

第四步,这一步是最重要的,修改程序文件/include/helpers/channelunit.herper.php

 

在函数function GetFileUrl中,修改第73行:

  1. if($moresite==1)
  2. {
  3. $articleUrl = preg_replace("/^".$sitepath.'/', '', $articleUrl);
  4. }

 

在路径正则表达式把斜杠/换成分号',修改后如下:

  1. if($moresite==1)
  2. {
  3. $articleUrl = preg_replace("'^".$sitepath."'",'',$articleUrl);
  4. }

 

同理修改第260行左右的代码:

  1. if($GLOBALS['cfg_multi_site']=='Y')
  2. {
  3. if($siteurl=='') {
  4. $siteurl = $GLOBALS['cfg_basehost'];
  5. }
  6. if($moresite==1 ) {
  7. $reurl = preg_replace("/^".$sitepath."/", '', $reurl);

将以上最后一句代码修改为:

  1. $reurl  = preg_replace("'^".$sitepath."'",'', $reurl);

这样修改后,就可以生成正确的二级域名文件路径了。

 

《解决dedecms多域名和站点的绑定.doc》

下载本文的Word格式文档,以方便收藏与打印。