由于Discuz论坛原来的应用中心升级的原因,造成一些使用Discuz建的论坛网站,后台应用中心安装DISCUZ模板或插件时会提示数据下载错误(105)。解决这个问题就是升级一下新的应用中心即可。
方法/步骤
下载新版应用中心升级文件replacedismall.php;下载:
将下载下来的replacedismall.php,通过FTP软件上传到论坛根目录下;
在浏览器中打开 http://你的网站域名/replacedismall.php ,这样就会自动接入到新的应用中心了;
<?php // 新应用中心地址:https://addon.dismall.com/ error_reporting(0); header('content-type:text/html;charset=utf-8'); $copy = true; // true:开启备份文件后缀.bak false:关闭备份 $files = array('./source/function/function_cloudaddons.php', './source/language/lang_admincp_msg.php', './source/language/lang_admincp.php'); foreach ($files as $f) { $code = readFileCode($f); if ($copy && !is_file($f . '.bak')) { writeFileCode($f . '.bak', $code); } if (!empty($code)) { $find = array( '/https?:\/\/open\.discuz\.net/si', '/https?:\/\/addon\.discuz\.com/si', '/https?:\/\/addon1\.discuz\.com/si', '/discuz\.com/si', '/dismall\.net/si', "/'download_ip' => '[^']+'/si", "/'check_ip' => '[^']+'/si", "/define\('CLOUDADDONS_DOWNLOAD_IP', '[^']+'\);/", "/define\('CLOUDADDONS_CHECK_IP', '[^']+'\);/", "/'check_url' => '[^']+'/", '/\&mysiteid\=\'\.\$_G\[\'setting\'\]\[\'my_siteid\'\];/si', ); $replace = array( 'https://open.dismall.com', 'https://addon.dismall.com', 'https://addon1.dismall.com', 'dismall.com', 'dismall.com', "'download_ip' => ''", "'check_ip' => ''", "define('CLOUDADDONS_DOWNLOAD_IP', '');", "define('CLOUDADDONS_CHECK_IP', '');", "'check_url' => 'https://addon1.dismall.com/md5/'", "&mysiteid='.\$_G['setting']['my_siteid'].'&addonversion=1';", ); $code = preg_replace($find, $replace, $code); if (!empty($code)) { writeFileCode($f, $code); } } else { echo $code; echo '文件:<font color="red">' . $f . ' 不存在!</font><br/>'; } } $code = readFileCode('source/function/function_cloudaddons.php'); if(preg_match("#dismall\.com#i", $code)){ //@unlink('./replacedismall.php'); exit('新应用中心地址已经替换完成,可进入后台安装想要的应用了!替换完成后,此文件可以删除!如有问题,到应用中心官方网站反馈:<a href="https://www.dismall.com/" target="_blank">https://www.dismall.com/</a>'); }else{ exit('自动替换新应用中心失败,请尝试其他方法:<a href="https://www.dismall.com/thread-957-1-1.html" target="_blank">https://www.dismall.com/thread-957-1-1.html</a>'); } function readFileCode($f) { if (file_exists($f) === false) { return ''; } $fp = fopen($f, 'r'); $code = ''; while (!feof($fp)) { $code .= fgets($fp, 4096); } fclose($fp); return $code; } function writeFileCode($f, $code) { $fp = fopen($f, 'w'); fwrite($fp, $code); fclose($fp); } ?>
网友评论