php - WordPress 插件安装/更新超时

标签 php wordpress .htaccess plugins timeout

我一直在通过 FTP 安装/更新我的自托管 Wordpress 主题/插件。即从我的 WordPress 站点获取链接,从 wordpress.org 下载插件,通过 FTP 从我的 comp 上传到该站点。

我希望能够通过 wp 管理界面更新它,但它似乎超时,并且页面在一段时间后停止加载。我可以看到一半的文件通过FTP上传成功。有办法解决这个问题吗?

以下是屏幕上显示的示例:

Installing Theme: DMS 1.0.3.6 Downloading install package from https://wordpress.org/themes/download/dms.1.0.3.6.zip

Unpacking the package…

Installing the theme…

1)我在 wp-config.php 文件中添加了 WP_MEMORY_LIMIT

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

什么也没发生。

2)我已将 set_time_limit() 添加到 wp-config.php 文件

set_time_limit() 

发生了这个错误

Warning: set_time_limit() has been disabled for security reasons in /home/**/public_html/wp-config.php on line 83

3) 我尝试编辑 .htaccess 文件,但这破坏了整个 Workpress 安装,最终我看到了一个错误页面。

AddType x-mapp-php5 .php
php_value upload_max_filesize 100M 
php_value post_max_size 100M
php_value memory_limit 100M

如何直接通过 WordPress 用户界面安装/更新我的插件?有没有办法解决超时问题?

顺便说一句,我的虚拟主机是 www.000webhost.com。

最佳答案

我最终编辑了 ...\wp_includes\class-http.php 文件。

在第 1250 行(取决于您的版本)附近,查找显示以下内容的行:

$theResponse = curl_exec( $handle );

并将其更改为:

$timelimit = ini_get('max_execution_time');
set_time_limit(900);
$theResponse = curl_exec( $handle );
set_time_limit(max($timelimit, 30));

这会将当前超时存储在变量中,将新超时设置为 900 秒(对于大多数连接来说 5 分钟应该足够了),然后执行请求,并将超时重置为我们开始之前的值。

这在过去对我有用。 注意:v3.8.2 使用另一种异步方法来执行安装,如果您使用的是 Windows,则可能需要设置一些额外的安全权限等才能使其正常工作。

干杯。

关于php - WordPress 插件安装/更新超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21874323/

相关文章:

php - 使用 AJAX 将 Wordpress 帖子内容加载到 DIV 中

php - Woocommerce 按帐单名称订购

wordpress - 检查 Woocommerce 购物车中是否存在多个强制产品类别之一

php - 未指定输入文件。 Godaddy 上的错误代码点火器

Php Sql 获取值

php - Laravel Route 无法工作错误是尝试获取非对象的属性

PHP 邮件 $email = $_POST ['email' ] 在 $recipients 中

javascript - 在 .js 文件和性能中使用 php

php - 模块可以加载但不显示在 phpinfo() 页面上吗?

php - MySQL - 重命名两个不同表中具有相同名称的选定列