Wordpress导入程序错误:最长执行时间60秒

时间:2016-05-02 11:07:42

标签: php xml wordpress

我正在尝试使用默认的unit test xml插件导入Wordpress主题wordpress importer。我收到以下错误:

  

致命错误:E:\ XAMPP \ htdocs \ wp \ wp-includes \ wp-db.php

超出最长执行时间60秒

这是一个基本的Wordpress 4.5.1安装,没有额外的插件或主题,除了wordpress importer v 0.6.1,在我的本地XAMPP服务器上,php.ini中的执行时间限制设置为6000,我可以看到这个预设在xampp的php_info中。 我已经尝试在wp-config.php和wp-db.php中添加set_time_limit(6000),结果出现同样的丑陋错误。

任何想法为什么会发生这种情况以及它如何得到帮助?

6 个答案:

答案 0 :(得分:19)

我找到了这个错误发生的确切原因,所以我会尝试为自己的问题提供答案。

在wp-includes / deprecated.php中有一个名为wp_get_http的函数,它仍然被wordpress importer插件使用(在wordpress-importer.php源文件中)。 在此函数内部调用set_time_limit(60),它是在所有wordpress源代码中使用参数60对此函数进行的两次调用之一,因此这是将导入器执行时间限制为60秒的位置。

wp_get_http由导入器插件在执行流程的后期调用,因此它会覆盖wp-config.php中的任何其他可能的set_time_limit()调用,并且无法通过php.ini中的修改来纠正,这些修改本身可能会发生托管服务提供商不允许。

对我有用的快速解决方案是修改wp-includes / deprecated.php中wp_get_http()内的set_time_limit调用,如下所示:

set_time_limit(1200); // Limit to 20 minutes

它为wordpress导入器提供20分钟的时间来获取导入期间可能需要的所有远程文件。可能这不是最安全的解决方案,但它对我有用。

答案 1 :(得分:3)

您可以将其添加到php.ini

参数或者set_time_limit(0);

它肯定会解决问题。

答案 2 :(得分:0)

这是因为php.ini中的文件上传时间设置为60 seconds,而WordPress需要更多时间才能正确上传该数据。随着时间结束php.ini所以它会抛出该错误。解决方案是您必须增加适合您的上传时间。

set_time_limit(300); //it will update your time to 300 seconds or 5 minutes.
max_execution_time(300);

用您自己的php.ini文件的代码行替换该代码行,您的问题将得到解决。如果问题仍然存在,您可以将该数字增加到300甚至更多,直到文件正确上传为止。如需进一步阅读,请访问http://php.net/manual/en/function.set-time-limit.php

答案 3 :(得分:0)

将此添加到.htaccess文件

<IfModule mod_php5.c>
php_value post_max_size 16M
php_value upload_max_filesize 16M
php_value memory_limit 128M
php_value max_execution_time 300
php_value max_input_time 300
php_value session.gc_maxlifetime 900
</IfModule>

这是你的wp-config.php

define('WP_MEMORY_LIMIT', '128M');

答案 4 :(得分:0)

只需转到wp-config文件并粘贴 set_time_limit(60); ,或者只是将括号中的数字更改为您想要的选项。

答案 5 :(得分:0)

安装自定义php设置插件 https://wordpress.org/plugins/custom-php-settings/

max_execution_time=60000

memory_limit=1024M

upload_max_filesize=1024M

post_max_size=1024M

max_input_vars=5000

然后保存这些设置我确定你得到你的解决方案谢谢

如果还是没有解决

与您的房东交谈。