发送页面之前,自主托pipe的WordPress会冻结20秒

我有一个WordPress的和PHPBB集成的网站 – 几个月来一直很好..然后突然间,加载速度非常慢。

在apache日志中没有错误,但是查看萤火虫中的页面会显示20秒的暂停,在页面交付之前。

更容易混淆,在同一台服务器上,同样的apache安装,PHPBB在30ms内加载,没有延迟。

我尝试了hogdetector wordpress插件,这表明延迟是在发送头之前 – 这似乎与萤火虫一致。

任何想法如何解决这一个进一步?

可能是DNS查找问题! 检查DNSconfiguration。

如果你在Linux(或类似Linux的环境)上运行它,请尝试在请求时运行一个数据包嗅探器,并查看它的要求和暂停。 像tcpdump或wireshark。 运行它,请求一些页面,看看结果是什么。 如果这是一个DNS问题,它应该显示在那里。 如果networking是好的,那么你需要下一步开始检查安装的本地问题。

你的WP插件之一可能是错误的。 尝试逐一禁用它们,并查看哪一个导致问题。

我观察(tcpdump),当WordPress试图从服务器端加载外部内容时,它可能会重试3次失败,每次尝试之间等待〜5秒。 如果外部数据永久不可用,则系统延迟15秒。 随着WordPress页面处理的进一步深入,您可以像我一样在Firefox中响应20秒的响应时间。

我遇到了一个YouTube的插件,试图从服务器直接从youtube.com加载内容的这个问题。 我的设置上的DNSparsing是正确的,但是防火墙正在发送TCP RESET到WordPress连接尝试。

我解决了这个问题,通过禁用服务器端的外部内容加载(可能或可能不是你的正确方法),在wp-config.php使用以下指令: define('WP_HTTP_BLOCK_EXTERNAL', true);

define('WP_ACCESSIBLE_HOSTS', 'example1.com, example2.com');

真奇怪,博客很慢,但是BBS很好。 如果可能的话,使用服务器上的浏览器(基于文本?)或类似wget的东西。 如果在当地的performance是正确的,我唯一能想到的就是代理问题。 当然,如果当地的performance很差,那么至less你知道这件事情很重要。