discuz云平台报调用远程接口失败的问题分析和解决
根据网络两篇文章整理
问题描述:
当开通或关闭某个云平台服务的时候,报如下错误信息:
调用远程接口失败。请检查您的服务器是否处于内网以及您服务器的防火墙设置。
云平台测试站点的接口文件正常,于是开始在文件里断点记录,发现程序也执行完了。
咨询了下云平台的同事,说是有可能是超时导致的。
于是进站点后台,进入chrome开发者模式下的网络选项卡,记录所有网络链接。
然后去开通或关闭某个服务,发现需要耗时8s之久,估计确实像同事说的那样是超时导致的。
问题总结:
出现此类问题的站点一般装了很多插件,更新插件缓存时耗时太久导致云平台访问超时没有正确的返回,进而报上面的错误。
解决办法:
找到文件"\api\manyou\Service\Server\Cloud.php"注销掉60到64行:
try {
require_once libfile('function/cache');
updatecache(array('plugin', 'setting', 'styles'));
cleartemplatecache();
} catch (Exception $e) {
}
修改为:
//try {
// require_once libfile('function/cache');
// updatecache(array('plugin', 'setting', 'styles'));
// cleartemplatecache();
// } catch (Exception $e) {
//}
原理:有些站点安装很多插件,不乏一些程序臃肿的插件,而操作云平台时,需要更新服务器的所有缓存,而时间限制是30秒,这样就会导致操作云平台因超时而报这个错误,注销掉既能解决这个问题;注意:这样操作的用户每次操作完云平台要手动更新一下缓存,否则云平台的菜单可能不更新;(不推荐注销代码的方式解决此问题,因为同步又会出问题,最好是卸载掉所有的插件来修复此问题,修复之后再按照自己的需求开启插件,当开启某插件而导致云平台又不能使用时,就能确定是哪个插件的问题了)
看了各种办法,还是以上这个办法(相比原文,这里只需要修改cloud.php这一个文件)好使,更新代码后,记得要在admin后台工具手动更新下缓存。
discuz云平台报调用远程接口失败的问题分析和解决的更多相关文章
- 【Discuz】云平台服务:出了点小错,由于站点ID/通信KEY等关键信息丢失导致Discuz!云平台服务出现异常
提示信息 出了点小错,由于站点ID/通信KEY等关键信息丢失导致Discuz!云平台服务出现异常 版本X3.2.20160601 解决方案 Step1.修改云平台开通状态为未开通状态 Step2.访问 ...
- java通过url调用远程接口返回json数据
java通过url调用远程接口返回json数据,有用户名和密码验证, 转自 https://blog.csdn.net/wanglong1990421/article/details/78815856 ...
- javascript调用ActiveX接口失败的解决方案及使用心得
前段时间公司做了个比较大的项目,需要用到ocx控件,我厂大部分项目都采用C#.net,而winform程序条用ocx控件接口是相对简单的,但是javascript调用ocx接口,却和winform的用 ...
- discuz清空session,导致session保存机制失败,session无法更新与解决
<?php function userErrorHandler() { $e = func_get_args(); echo '<pre style="color:red;&qu ...
- 本地tomcat调用远程接口报错:java.lang.reflect.InvocationTargetException
今天碰到一个奇怪的问题,本地Eclipse起了一个tomcat通过http去调一个外部接口,结果竟然报了一个反射的异常,先看下完整日志: , :: 下午 org.apache.catalina.sta ...
- Discuz云平台站点信息同步失败,An unknown error occurred. May be DNS Error.
站点信息同步失败 An unknown error occurred. May be DNS Error. (ERRCODE:1) 经过Discuz教程网(http://www.1314study.c ...
- PyQt5 中调用MySql接口失败 ( QSqlDatabase 组件) 在Linux环境下如何修改
最近在跑下面这么一个代码,怎么跑都无法连通服务器,如下: # -*- coding: utf-8 -*- ''' [简介] PyQt5中 处理database 例子 ''' import sys fr ...
- Discuz! X3.1云平台QQ互联的Unknown column 'conuintoken' in 'field list' 解决办法
http://www.discuz.net/thread-3482497-1-1.html 由于程序安装默认数据表的结构和QQ互联数据表结构不同,安装Discuz! X3.1和升级Discuz! X3 ...
- 微信小程序 调用远程接口,给全局数组赋值
关键是 let that = this 因为在onLoad 的 wx.request方法里, this指的是 wx.request 的上下文, 所以应该是在 onLoad 的时候定义 let that ...
随机推荐
- Android之手机屏幕的获取
屏幕区域的获取: activity.getWindowManager().getDefaultDisplay(); 应用区域的获取: Rect outRect = new Rect(); activi ...
- SQL 的一个技巧
遇到一个需求,项目是我接手二次开发的,之前的大神设计数据库,订单表中没有订单号,现在让我加上这个号,规则是订单创建日期加上自增的ID,ID需要补足5位,例:00002,00124,01245这样.这个 ...
- js cookie使用方法详解
代码如下 复制代码 <script>function getCookie(c_name){ if (document.cookie.length>0){ //先查询cookie是否为 ...
- oracle开启audit(审计)
1.查看审计功能是否开启(本机已经开启,如果audit_sys_operations值为FALSE就是没开审计) [sql] view plaincopyprint? SQL> CONN /AS ...
- 手机看youtube的方法|一个好用的VPN
俗话说:网络无国界.但是由于天朝的限制,我们无法访问YouTube .谷歌.twitter等一些国外网站. 这个时候我们就需要FQ.最直接有效的方法就是:VPN(虚拟专用网络). 虚拟专用网络的功能是 ...
- 结构型模式——Adapter
1.意图 将一个类的接口转换成客户希望的另一个接口.使得原本由于接口不兼容而不能一起工作的那些类可以一起工作. 2.结构 类适配器 对象适配器 3.参与者 Target定义Client使用的与特定领域 ...
- xamarin android——数据绑定到控件(二)
本示例为通过媒体内容提供器获取本机中的图片显示在Gallery中. 活动中简单的初始化代码 private void InitGallery() { Gallery gallery = FindVie ...
- Ueditor中增加迅雷下载支持
在项目中有遇到需要在Ueditor中加一个链接,迅雷的开头是thunder 会被默认加上http:// 最后的 结果就变成了http://thunder://xxxxx 导致用户点击失败: 其实在 ...
- ubuntu启动慢
http://blog.sina.com.cn/s/blog_4cc9ffbc0100rxhh.html 参考 笔记本装的是ubuntu12.04,最近发现开机启动特别慢,至少3分钟,总担心系统会启动 ...
- Linux C 程序指针和指针数组(NIGH)
指针和指针数组 #include<stdio.h> int main() { , b = ; int *p1 = &a , *p2 = &b ; printf(" ...