您的位置:首页 > 理论基础 > 计算机网络

WordPress出现“在向 API 请求时发生了一个 HTTP 错误”解决方法

2012-02-20 20:46 531 查看
WordPress出现“在向 API 请求时发生了一个 HTTP 错误”解决方法

一、主要原因是 主机禁用函数fsockopen()。API 调用不到的。

解决方法:打开/wp-includes/class-http.php 查找 @fsockopen( 替换为 @pfsockopen(

查找 fsockopen( 替换为 pfsockopen(

注意:不要把 WP_Http_Fsockopen( 替换了

二、还有个方法:

修改wp-includes/class-http.php的第220行,将

‘timeout’ => apply_filters( ‘http_request_timeout’, 5),

中的5改为较大的数,这个5是请求时间,单位为 秒 ,就是5秒超时,经测有效

三、我在本地配置的linux不会出现超时的现象,反而在国外的linux上出现超时,为什么呢,后来我对代码一层一层的解开,发现是慢在域名解析上。因为wp在线更新时是连接api.wordpress.org,比如安装模板时连接http://api.wordpress.org/themes/info/1.0/,我在本地的linux上wget http://api.wordpress.org/themes/info/1.0/ 和在美国的linux上用wget http://api.wordpress.org/themes/info/1.0/ 速度相差很多。后来就把/etc/resolv.conf 把主解析服务器改成8.8.8.8,就好了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐