今天帮朋友查询wordpress执行超级慢的原因,特此记录
开启fpm的慢日志,记录执行超过30秒的脚本
request_slowlog_timeout = 30 slowlog = var/log/slow.log
查看日志
[23-May-2019 17:14:14] [pool www] pid 27993 script_filename = /www/wwwroot/www.yingxiaoshi.com/wp-admin/admin-ajax.php [0x00007fbc9c832ef8] curl_exec() /www/wwwroot/www.yingxiaoshi.com/wp-content/plugins/wp-autopost-pro/wp-autopost-function.php:2352 [0x00007fbc9c832bd0] curl_get_encoding_contents_ap() /www/wwwroot/www.yingxiaoshi.com/wp-content/plugins/wp-autopost-pro/wp-autopost-function.php:2447 [0x00007fbc9c8329b8] curl_get_contents_ap() /www/wwwroot/www.yingxiaoshi.com/wp-content/plugins/wp-autopost-pro/wp-autopost-function.php:2536 [0x00007fbc9c831f80] get_html_string_ap() /www/wwwroot/www.yingxiaoshi.com/wp-content/plugins/wp-autopost-pro/wp-autopost-function.php:5440 [0x00007fbc9c831e30] +++ dump failed
发现是wp-autopost-pro采集插件问题
ThinkPHP中有一个debug调试功能,能输出报错文件的信息,并能看到这个函数被哪些函数调用,从框架的启动开始记录,特别方便调试。于是研究了下它的底层给予了实现。<?php //--框架核心--Start //框架内置错误处理 function errDealWith($er...
<?php /** * @throws Exception */ function curl() { throw new \Exception('err...
posix_ttyname - 获取当前终端设备名称。<?php var_dump( posix_ttyname(STDOUT) );我们启动一个终端,执行上面的代码输出:/dev/tty1我们再启动一个终端,执行上面的代码输...
在项目下的composer配置文件修改(PaySdk是我这里一个支付sdk的目录,包含各种各样的支付sdk,这样写的意思让composer自动把PaySdk下的所有文件自动加载):"autoload": { &...
本教程使用的定时任务基于EasyTak,EasyTask官方文档:https://gitee.com/392223903/EasyTask由于tp3.2.x官方开发未考虑命令行支持和绝对路径开发的标准,因此我编写了一个支持的类来运行。1.在tp3.2.3根目录下安装easytaskcomposer&...
在调用微信code换openid的接口curl报错curl Received HTTP code 403 from proxy after CONNECT,错误码56。可以看到是curl的代理有问题。然后我自己电脑设置代理去访问curl请求的地址,的确也返回了403,说明代理不允许访问这个地址,联系...