来源:http://www.iwobanji.com/zatan/20160927300.html
环境:dedecms v5.7 sp1
步骤:
1.主机完成绑定子域名及域名解析工作
2.dedecms系统设置:
2.1: 后台管理目录-系统-系统基本参数-核心设置-参数说明一栏中的((是/否)支持多站点,开启此项后附件、栏目连接、arclist内容启用绝对网址:),选择‘是’,然后确定。
2.2: 栏目设置
2.2.1:栏目管理-修改栏目-常规选项:
- 栏目属性:频道页
-
文件保存目录:一般设置成一级目录目录。如果是设置手机站子域名,可以写'{cmspath/m}'.
如图:
2.2.2:栏目管理-修改栏目-高级选项:
- 多站点支持
- 绑定域名
以上就是操作步骤。但是会有一个新的问题,就是上传的图片,附件无法调用正确的绝对地址,这有两个解决办法,下面这种是改程序,让上传支持,具体修改见:
这一步是最重要的,修改程序文件/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文件外,还需在‘站点域名管理’中设置子域名和对应文件夹的关系。点击查看具体设置。