这个问题已经解决
参考如下修改
sourceclassclass_core.php 第164.165行
$_G[‘siteurl’]  和 $_G[‘siteroot’] 这俩变量决定着整站的URL链接,只要在这里去除掉子目录字符串即可。
格式如下:

$_G[‘siteurl’] = str_replace(“/子目录名称需自行替换/”,””,htmlspecialchars(‘http: //’.$_SERVER[‘HTTP_HOST’].preg_replace(“//+(api)?/*$/i”, ”, substr($_G[‘PHP_SELF’], 0, strrpos($_G[‘PHP_SELF’], ‘/’))).’/’));
$_G[‘siteroot’] = str_replace(“/子目录名称需自行替换”,””,substr($_G[‘PHP_SELF’], 0, -strlen($_G[‘basefilename’])));

直接替换上面的中文为你的子目录

——————————————————————————–

 

这个问题我也碰到了  现在解决了  方法是这样的

找到 sourceclassclass_core.php 这个文件  X 2版本是在176行

X2中原来代码是这样的 $_G[‘siteurl’] = htmlspecialchars(‘http://’.$_SERVER[‘HTTP_HOST’].$sitepath.’/’);

现在改成这句  $_G[‘siteurl’] = str_replace(“/中国人”,””,htmlspecialchars(‘http: //’.$_SERVER[‘HTTP_HOST’].preg_replace(“//+(api)?/*$/i”, ”, substr($_G[‘PHP_SELF’], 0, strrpos($_G[‘PHP_SELF’], ‘/’))).’/’));

上面这句中(中国人)部分 改成你子目录的名字就行了  改好后 上传 覆盖 OK

如果你是X 1.5 版本 这句是在164行 方法也是一样  把这句覆盖原来的  (中国人)几个字改成你的子目录名字

—————————————————–

mathcai补充:

上面提到的两个地方我都改了才成功解决(discuz x2版本)

还有人说:if(defined(‘SUB_DIR’)) 改成if(1),我没改这里

 

http://bbs.idcspy.org/thread-158180-1-1.html

 

————————————————–

X2.5是安装在子目录下的:www.abc.com/bbs

经过多次摸索,根据论坛里网友贴的方法以及官方说明(好像只有X1.5的还没有X2的)
现在二级域名绑定正常:bbs.abc.com(论坛),news.abc.com(门户)
但现在通过论坛首页进入管理中心却进不去了,论坛首页进入管理中心的链接是bbs.abc.com/bbs/admin.php,而实际上应该是bbs.abc.com/admin.php

请问如何修改呢?修改两个地方:
1、/bbs/source/class/discuz/目录下discuz_application.php文件。该文件的目的是该网址
176行改成:$_G[‘siteurl’] =  str_replace(“子目录名/”,””,htmlspecialchars(‘http://’.$_SERVER[‘HTTP_HOST’].$sitepath.’/’));
179行后加一行:$_G[‘siteroot’] = str_replace(“子目录名/”,””,$_G[‘siteport’]);

2、/bbs/uc_server/目录下avatar.php文件,该文件的目的是显示用户头像
13行改成:define(‘UC_API’, strtolower(($_SERVER[‘HTTPS’] == ‘on’ ? ‘https’ : ‘http’).’://’.$_SERVER[‘HTTP_HOST’].’/uc_server/’));

 

http://www.discuz.net/forum.php?mod=viewthread&tid=2702509

赞赏

微信赞赏支付宝赞赏

「赏不在多,觉得文章有用,就赞赏下吧!」

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据