栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP > php开源框架 > 齐博CMS

频道二级域名的配置方法 - 齐博CMS之X1

齐博CMS 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

频道二级域名的配置方法 - 齐博CMS之X1

现在是移动端的天下,域名的意义其实并不大了,并且启用频道二级域名还容易存在JS跨域的问题,同时微信公众号与小程序也会有域名的限制,所以一直以来就没有考虑在系统中集成频道二级域名。
大家有需要的话,可以参考下面的方法自行配置。
修改文件`applicationconfig.php` 查找`url_domain_deploy`把他右边的 `false`换成 `true`
再查找 `url_domain_root` 在他右边输入 `abc.com` 即你的域名(注意单引号不能漏掉)这一项其实不设置也问题不大,但有的服务器不设置就不会生效,所以尽量设置一下吧。
如下图所示
![](https://img.kancloud.cn/83/18/8318875ed01e9fcd4c6965cf1ab9d424_672x566.png)

再查找 `extra_file_list`把右边中括号里边的内容`THINK_PATH . 'helper' . EXT`换成 `APP_PATH . 'helper' . EXT,THINK_PATH . 'helper' . EXT`

如下图所示
![](https://img.kancloud.cn/c6/1e/c61e841c662235446333a881c625fb3a_1146x213.png)


接着在`application`目录下创建一个`helper.php`文件 即`applicationhelper.php`里边的内容放下如下代码

use thinkUrl;r
r
if (!function_exists('url')) {r
r
function url($url = '', $vars = '', $suffix = true, $domain = false)r
{r
static $array = null;r
if ($array===null) {r
$array = @include(RUNTIME_PATH.'url_cfg.php');r
if (empty($array)) {r
$array = [];r
}r
}r
if ($vars && is_string($vars)) {r
parse_str($vars,$vars);r
}r
$par = '';r
$_vars = $vars; //避免改变顺序r
if ($vars) {r
ksort($vars);r
$par = http_build_query($vars);r
}r
r
if ($domain===false) {r
$url = full_url($url);r
list($m_name,$m_file,$m_action) = explode('/', $url);r
$md = modules_config($m_name);r
if(IN_WAP===true){r
if ($md['wap_domain']) {r
$domain = $md['wap_domain'];r
}r
}else{r
if ($md['pc_domain']) {r
$domain = $md['pc_domain'];r
}r
}r
r
if ($domain===false) { r
if(IN_WAP===true && config('webdb.wap_domain')){r
$domain = config('webdb.wap_domain');r
}elseif(config('webdb.pc_domain')){r
$domain = config('webdb.pc_domain');r
}r
}r
}r
r
if ($par && $array[$url][$par]) {r
$_url = Url::build($url.'?'.$par, [], $suffix, $domain);r
}else{r
$_url = Url::build($url, $_vars, $suffix, $domain);r
}r
r
if ( ($m_name=='index'&&!in_array($m_file, ['alonepage','index','login','reg','plugin']))|| ($m_name=='member'&&!in_array($m_file, ['index'])) ) { //避免ajax或框架的跨域r
$_url = preg_replace("/^(http|https):\/\/([^\/]+)\//i", "/",$_url);r
}elseif($url=='index/index/index'){r
$_url = str_replace('index/index/index.html','',$_url);r
}r
return $_url;r
r
}r
}




然后再修改 `applicationroute.php` 查找里边类似的代码

Route::group(['name'=>'bbs','ext'=>'html','__domain__'=>'thinkphp'], [r
'show-' =>['bbs/content/show',['method'=>'get'],['id' => 'd+']],r
'list-'=>['bbs/content/index',['method'=>'get'],['fid' => 'd+']],r
'mid-'=>['bbs/content/index',['method'=>'get'],['mid' => 'd+']],r
'show' => 'bbs/content/show',r
'list' => 'bbs/content/index',r
'index$' => 'bbs/index/index',r
]);

把他删除,换成下面的代码

Route::domain('bbs',[r
'show-' =>['bbs/content/show',['method'=>'get'],['id' => 'd+']],r
'list-'=>['bbs/content/index',['method'=>'get'],['fid' => 'd+']],r
'mid-'=>['bbs/content/index',['method'=>'get'],['mid' => 'd+']],r
'show' => 'bbs/content/show',r
'list' => 'bbs/content/index',r
'index$' => 'bbs/index/index',r
'/$' => 'bbs/index/index',r
]);

第一行的`bbs`即代表二级域名是`bbs`,比如bbs.xxx.com 这个bbs是可以换成其它的,比如`lutan` 下面7行的`bbs`即代表是论坛模块目录名

上面只是针对论坛的二级域名设置,其它频道比如cms qun也同样的方法这样处理,先要删除原有的路由规则,再添加,不然的话,会有冲突不会生效。

如下图所示
![](https://img.kancloud.cn/88/7f/887ffc798dbff2f04754edd2f950b096_1491x807.png)


再修改文件`applicationadmincontrollerModule.php` 查找
`['icon','icon', '图标', ''],`在他下面一行添加如下代码
`['text','pc_domain', '二级域名', '没配置好服务器的话,必须留空,否则请输入二级域名比如“bbs”而不是http://bbs.xxx.com也不是bbs.xxx.com'],`
保存即可,如下图所示
![](https://img.kancloud.cn/6f/e4/6fe403be11d770d6a8f41c73ef5eb305_1613x526.png)


最后就要升级一下数据库,在后台数据库管理那里导入下面的内容

ALTER TABLE `qb_module` ADD `pc_domain` VARCHAr( 100 ) NOT NULL COMMENT '二级域名,比如“wap”而不是http://wap.xxx.com也不是wap.xxx.com';r
INSERT INTO `qb_config` (`id`, `type`, `title`, `c_key`, `c_value`, `form_type`, `options`, `ifsys`, `htmlcode`, `c_descrip`, `list`, `sys_id`) VALUES(0, 1, 'PC访问专用域名', 'pc_domain', '', 'text', '', 1, '', '没配置好服务器的话,必须留空,否则请输入域名比如“www”而不是http://www.xxx.com也不是www.xxx.com', 0, 0);


确认先把要使用的二级域名指向到当前网站的根目录后。再进后台设置一下www域名网址,及相应的频道二级域名即可,如下图所示

![](https://img.kancloud.cn/75/e2/75e2ec4c47fdf00d072db8a063e0a338_1451x764.png)

![](https://img.kancloud.cn/27/ec/27ecaed8fccb5313f82bbab29b08d3fa_1436x760.png)



这样就可以使用频道二级目录了!



必须要注意一下


![](https://img.kancloud.cn/c9/7e/c97e74f5abf6f9753b4f5a1429e01d2f_1813x922.png)


最后的效果如下图所示
![](https://img.kancloud.cn/81/bc/81bc5bc41841f026ead40ee5527dec7e_930x677.gif)


,
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/214416.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号