WordPress更新提示Too Many Requests解决方案

  45 次阅读

CONTENT

有问题?解决不久完了

鲁迅

先解释一下Too Many Requests

在HTTP协议中,响应状态码  429 Too Many Requests 表示在一定的时间内用户发送了太多的请求,即超出了“频次限制”。

在响应中,可以提供一个  Retry-After 首部来提示用户需要等待多长时间之后再发送新的请求。

https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Status/429

但是Wordpress官网这个比较迷,就算今天没有访问wp官方也会出现

点击更新,接着会提示Too Many Reauests

但是,最上面会提示:
正在从: https://downloads.wordpress.org/release/zh_CN/wordpress-5.3.zip

后面的地址复制下来
服务器wget,宝塔的远程下载这两个能下载也可以

服务器不能直接下的话,就本地下载上传到服务器

上传到那个目录无所谓,一会用完就删掉

接着找到 wp-admin/includes/class-wp-upgrader.php

public function download_package( $package, $check_signatures = false ) {

	/**
	 * Filters whether to return the package.
	 *
	 * @since 3.7.0
	 *
	 * @param bool        $reply   Whether to bail without returning the package.
	 *                             Default false.
	 * @param string      $package The package file name.
	 * @param WP_Upgrader $this    The WP_Upgrader instance.
	 */
	$package = "/tmp/wordpress-5.3.zip";
	$reply = apply_filters( 'upgrader_pre_download', false, $package, $this );
	if ( false !== $reply ) {
		return $reply;
	}

	if ( ! preg_match( '!^(http|https|ftp)://!i', $package ) && file_exists( $package ) ) { //Local file or remote?
		return $package; //must be a local file..
	}

	if ( empty( $package ) ) {
		return new WP_Error( 'no_package', $this->strings['no_package'] );
	}

	$this->skin->feedback( 'downloading_package', $package );

	$download_file = download_url( $package, 300, $check_signatures );

	if ( is_wp_error( $download_file ) && ! $download_file->get_error_data( 'softfail-filename' ) ) {
		return new WP_Error( 'download_failed', $this->strings['download_failed'], $download_file->get_error_message() );
	}

	return $download_file;
}

找到这个函数
在函数第一行添加
$package = "/tmp/wordpress-5.3.zip";
后面的路径就是你实际上传的路径
或是你自己制作的cdn都可以

之后回到wp直接更新就好
也不用想着把他恢复
因为更新后新文件会把它覆盖

建议还是自己弄
不要使用他人提供的cdn地址

Comments | NOTHING

暂无评论...