discuz 插件速度慢的查找方法

source/function/function_core.php
的函数 hookscript


foreach($funcs as $hookkey => $hookfuncs) {
foreach($hookfuncs as $hookfunc) {
//起始时间
$a = time()

……

//结束时间
$b = time()-$a;
echo “==========”.$b.print_r($hookfuncs,true);
}
}

通过查看===== 标记后面$b值,如果$b过大,就查看$hookfuncs 是什么造成的,从而查出哪个插件,解决方法就是了可以临时跳过那个插件

if($hookfunc[0]==”cloudsearch”) continue;
上面的cloudsearch 就是 $hookfuncs[0] 查出来的

//PS 上面的方法不一定好使,可以用下面的

测试方法 用你的测试访问两次某个地址

可以通过改变某个参数, user-agent 等来对比生成的 zjpro.txt 文件的不一致性,从而确定哪一个plungin的问题!!!!

比如

curl -v -A “百度spider的UA” http://URI

curl -v -A “正常IE的UA” http://URI

对比生成的两次zjpro.txt 文件

 

阿里云的主机宝 php5.2 出现 502错误原因总结

  • sqlite 3  可能导致 php 5.2 版本出现 502错误 。解决方法:把/usr/lib/libsqlite-3 移走
  • openssl问题可能导致,解决方法,安装openssl-devel 然后重新编译 php ,附录为主机宝官方给的ssl方面的解决方法(未实验, 可能X86_64位需要修改)

============1======================
wget dl2.admin5.com/php/curl-7.37.1.tar.gz
tar zxvf curl-7.37.1.tar.gz
cd curl-7.37.1
./configure –prefix=/usr/local/curl
make && make install
cd ..
rm -rf curl-7.37.1*
============2======================
cd /a/apps/
wget dl2.admin5.com/php/php-5.2.17-have.tar.gz
rm -rf php-5.2.17
tar zxvf php-5.2.17-have.tar.gz
rm -rf php-5.2.17-have.tar.gz

===========3(镜像1.0)==============
cd /root
wget dl2.admin5.com/php/openssl-1.0.1h.tar.gz
tar zxvf openssl-1.0.1h.tar.gz
cd openssl-1.0.1h
./config –prefix=/usr/local/ssl shared zlib
make && make install
mv /usr/bin/openssl /usr/bin/openssl.old
mv /usr/include/openssl /usr/include/openssl.old
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
echo “/usr/local/ssl/lib” >> /etc/ld.so.conf
ldconfig -v
cd ..
rm -rf openssl-1.0.1h*
===========4=======================
killall -9 php-cgi
killall -9 php-cgi
service php-fpm start
service zadmin start

zhujibao