我的wordpress网站有两个插件似乎占用了大量内存。当我尝试提取数据或执行某些任务时,它最终会在30秒后超时。
当其中一个插件被禁用时,它会表现得更好。问题是,这两个插件必须被激活,因为一个是支付网关系统WooCommerce。另一个是学习管理系统LearnDash。
我正在与插件开发人员进行持续的沟通,因为他们非常友好地调查问题。
同时,我试图看看是否可以设置两个wordpress实例。一个在我的主域,另一个在我的子域。并且希望我可以将主域设置为人们可以购买产品的地方,子域具有学习管理系统,人们可以在其中学习他们购买的产品。
这将是两个不同的wordpress数据库。
我试图大致了解我可能想要去哪个方向,因为我有以下问题:
1)一个wordpress的插件是否可以与子域中的其他wordpress数据库进行通信?
2)wordpress是否可能有两个数据库并且插件来自不同的数据库?
3)是否有一种特定的方法来准确诊断激活了多少插件并知道某些任务是否在没有30秒超时问题的情况下成功运行?
答案 0 :(得分:2)
您需要使用电子商务和LearnDash插件修复一个WordPress网站中的基础问题,因为1)和2)是巨大的时间浪费,这将导致难以维护的错误,不可靠的系统。 / p>
3)查看服务器日志中的PHP超时和内存错误;调整服务器上的PHP内存和超时问题。
PHP超时错误:
在php.ini文件中设置PHP max_execution_time 120秒:
max_execution_time = 120
或.htaccess
for PHP5
<IfModule mod_php5.c>
php_value max_execution_time 120
</IfModule>
<强>内存强>
在wp-config.php:
整体记忆:
define('WP_MEMORY_LIMIT', '128M');
内存管理员:
define('WP_MAX_MEMORY_LIMIT', '256M');
如果你在便宜的共享主机上,找一个更好的主机。电子商务和诸如LearnDash之类的系统是数据库密集型的,即使有大量内存和高PHP执行设置,也无法在廉价主机上运行。必须给PHP超过30到60秒max_execution_time
意味着你在慢速服务器上。
如果这是您自己的服务器,请使用众多调试插件中的一个来检查MySQL查询使用情况,查询速度等。https://wordpress.org/plugins/search.php?q=debug根据需要调整MySQL配置,以便MySQL可以处理WordPress和插件的负载。如果这不是您自己的服务器,请找一个更好的主机。
并且,如评论所述,请尝试https://wordpress.org/plugins/p3-profiler/以检查插件的资源使用情况。