Discuz! x2 网站的链接中出现 :81, :37001, :801 等非 :80 端口号导致帖子链接无法访问时,按以下步骤操作即可将链接中的端口号去除。
1.找到并打开 source/class/class_core.php,搜索以下代码- $_G['siteport'] = empty($_SERVER['SERVER_PORT']) || $_SERVER['SERVER_PORT'] == '80' ? '' : ':'.$_SERVER['SERVER_PORT'];
复制代码 2.如下所示,在其前加上 //,将其注释掉。- //$_G['siteport'] = empty($_SERVER['SERVER_PORT']) || $_SERVER['SERVER_PORT'] == '80' ? '' : ':'.$_SERVER['SERVER_PORT'];
复制代码 3.然后在这一段下面别起一段,粘贴以下代码:- $_G['siteport'] = empty($_SERVER['SERVER_PORT']) || $_SERVER['SERVER_PORT'] == '80' ? '' : '';
复制代码 这一句代码的作用是当端口号不为80的时候,将端口号替换为空。
注:在源代码前加//后再复制一次修改,是为了保留源代码,以供以后有需要时恢复。
当然,你也可以省略掉第2步,直接将第1步的代码删除,或改为) 以下代码修改完成后将文件上传到服务器对应目录,然后更新缓存,在浏览器中刷新,之前形如 http://51-n.com:37001/ 的链接就变成了 http://www.51-n.com/,问题成功解决。
另外补充一点,当服务器的端口不为80时,Ucenter的应用可能出现通信失败的现象,你可访问管理后台,点击Ucenter--应用管理,再点击相应的应用名称进入设置页面,将应用的主URL设置为带端口的链接,如 http://51-n.com:37001,保存以后应用通信即可恢复正常。 |
|