discuz版块绑定了二级域名后主题地址也变为二级域名的解决方法-Discuz教程下载

discuz版块绑定了二级域名后主题地址也变为二级域名的解决方法

开通本站Svip会员,全站资源免费下
现象:如果您的网站将版块设置了二级域名,则在X2下访问这个二级域名而访问到对应版块的主题列表时,主题的链接地址也为二级域名的地址了。

正确的地址应该为网站在后台 → 域名设置 → 应用域名中设置的“默认”域名。

修改办法:(正式版解决办法)
找到 source/function/cache/cache_setting.php 文件的第 389 行附近
  1. $repflag = $apps['portal'] || $apps['forum'] || $apps['group'] || $apps['home'];
复制代码
修改为
  1. $repflag = $apps['portal'] || $apps['forum'] || $apps['group'] || $apps['home'] || $apps['default'];
复制代码
注:按照“临时方法”修改过的,请您还原代码。

===========================================================================

修改方法:(此为临时方法,稍后会有更加专业的修改办法)
找到 source/function/function_core.php 文件的第 1140 行附近
  1. function output_replace($content) {
  2.         global $_G;
  3.         if(defined('IN_MODCP') || defined('IN_ADMINCP')) return $content;
  4.         $temp = parse_url($_G['siteurl']);
  5.         if(!empty($_G['setting']['output']['str']['search'])) {
  6.                 if(empty($_G['setting']['domain']['app']['default'])) {
  7.                         $_G['setting']['output']['str']['replace'] = str_replace('{CURHOST}', $temp['host'], $_G['setting']['output']['str']['replace']);
  8.                 }
  9.                 $content = str_replace($_G['setting']['output']['str']['search'], $_G['setting']['output']['str']['replace'], $content);
  10.         }
  11.         if(!empty($_G['setting']['output']['preg']['search'])) {
  12.                 if(empty($_G['setting']['domain']['app']['default'])) {
  13.                         $_G['setting']['output']['preg']['search'] = str_replace('\{CURHOST\}', preg_quote($temp['host']), $_G['setting']['output']['preg']['search']);
  14.                         $_G['setting']['output']['preg']['replace'] = str_replace('{CURHOST}', $temp['host'], $_G['setting']['output']['preg']['replace']);
  15.                 }
  16.                 $content = preg_replace($_G['setting']['output']['preg']['search'], $_G['setting']['output']['preg']['replace'], $content);
  17.         }

  18.         return $content;
  19. }
复制代码
修改为如下代码
  1. function output_replace($content) {
  2.         global $_G;
  3.         if(defined('IN_MODCP') || defined('IN_ADMINCP')) return $content;
  4.         $temp = parse_url($_G['siteurl']);
  5.         /*
  6.         if(!empty($_G['setting']['output']['str']['search'])) {
  7.                 if(empty($_G['setting']['domain']['app']['default'])) {
  8.                         $_G['setting']['output']['str']['replace'] = str_replace('{CURHOST}', $temp['host'], $_G['setting']['output']['str']['replace']);
  9.                 }
  10.                 $content = str_replace($_G['setting']['output']['str']['search'], $_G['setting']['output']['str']['replace'], $content);
  11.         }
  12.         */
  13.         if(!empty($_G['setting']['output']['str']['search'])) {
  14.                 if(empty($_G['setting']['domain']['app']['default'])) {
  15.                         $_G['setting']['output']['str']['replace'] = str_replace('{CURHOST}', $temp['host'], $_G['setting']['output']['str']['replace']);
  16.                 } else {
  17.                         $_G['setting']['output']['str']['replace'] = str_replace('{CURHOST}', $_G['setting']['domain']['app']['default'], $_G['setting']['output']['str']['replace']);
  18.                         $_G['setting']['output']['str']['search'][] = $temp['host'];
  19.                         $_G['setting']['output']['str']['replace'][] = $_G['setting']['domain']['app']['default'];
  20.                 }
  21.         } elseif(!empty($_G['setting']['domain']['app']['default'])) {
  22.                 $_G['setting']['output']['str']['search'] = $temp['host'];
  23.                 $_G['setting']['output']['str']['replace'] = $_G['setting']['domain']['app']['default'];
  24.         }
  25.         if(!empty($_G['setting']['output']['str']['search'])) {
  26.                 $content = str_replace($_G['setting']['output']['str']['search'], $_G['setting']['output']['str']['replace'], $content);
  27.         }
  28.         if(!empty($_G['setting']['output']['preg']['search'])) {
  29.                 if(empty($_G['setting']['domain']['app']['default'])) {
  30.                         $_G['setting']['output']['preg']['search'] = str_replace('\{CURHOST\}', preg_quote($temp['host']), $_G['setting']['output']['preg']['search']);
  31.                         $_G['setting']['output']['preg']['replace'] = str_replace('{CURHOST}', $temp['host'], $_G['setting']['output']['preg']['replace']);
  32.                 }
  33.                 $content = preg_replace($_G['setting']['output']['preg']['search'], $_G['setting']['output']['preg']['replace'], $content);
  34.         }

  35.         return $content;
  36. }
复制代码

全部评论 0

您需要登录后才可以回帖 立即登录
登录
0
0
0
返回顶部