dedecms栏目目录绑定子域名设置教程

来源:http://www.iwobanji.com/zatan/20160927300.html

环境:dedecms v5.7 sp1

步骤:
1.主机完成绑定子域名及域名解析工作
2.dedecms系统设置:
2.1: 后台管理目录-系统-系统基本参数-核心设置-参数说明一栏中的((是/否)支持多站点,开启此项后附件、栏目连接、arclist内容启用绝对网址:),选择‘是’,然后确定。

如图:
dedecms栏目目录绑定子域名设置教程_第1张图片
1625313617-2.png

2.2: 栏目设置
2.2.1:栏目管理-修改栏目-常规选项:

  • 栏目属性:频道页
  • 文件保存目录:一般设置成一级目录目录。如果是设置手机站子域名,可以写'{cmspath/m}'.

    如图:
    dedecms栏目目录绑定子域名设置教程_第2张图片
    1625314400-0.jpg

2.2.2:栏目管理-修改栏目-高级选项:

  • 多站点支持
  • 绑定域名

如图:
dedecms栏目目录绑定子域名设置教程_第3张图片
1625312K7-1.jpg

以上就是操作步骤。但是会有一个新的问题,就是上传的图片,附件无法调用正确的绝对地址,这有两个解决办法,下面这种是改程序,让上传支持,具体修改见:

这一步是最重要的,修改程序文件/include/helpers/channelunit.herper.php:
在函数function GetFileUrl中,修改第73行:
if($moresite==1)
{
   $articleUrl = preg_replace("/^".$sitepath.'/', '', $articleUrl);
}
在路径正则表达式把斜杠/换成分号',修改后如下:
if($moresite==1)
{
   $articleUrl = preg_replace("'^".$sitepath."'",'',$articleUrl);
}
同理修改第280行左右的程序:
if($GLOBALS['cfg_multi_site']=='Y')
{
  if($siteurl=='') {
     $siteurl = $GLOBALS['cfg_basehost'];
  }
  if($moresite==1 ) {
     $reurl = preg_replace("/^".$sitepath."/", '', $reurl); 
将以上最后一句代码修改为:
$reurl  = preg_replace("'^".$sitepath."'",'', $reurl);
这样修改后,就可以生成正确的二级域名文件路径了。


另外,如果是本地测试,需要注意域名与站点的设置。使用phpstudy设置中,除了配置host文件外,还需在‘站点域名管理’中设置子域名和对应文件夹的关系。点击查看具体设置。

你可能感兴趣的:(dedecms栏目目录绑定子域名设置教程)