WordPress 上传图片时显示 HTTP 错误

今天在我的博客上工作时,WordPress在上传图片时 显示HTTP错误,我感到困惑和无助。我尝试一次又一次地上传图像,但错误不会消失。经过 5-6 次尝试后,我能够再次成功上传图像。但我的成功是短暂的,因为几分钟后同样的错误来敲我的门。

WordPress 上传图片时显示 HTTP 错误

虽然上述问题有许多可用的修复程序,但它们会再次浪费您的时间,这就是为什么我要在上传图像时修复此HTTP错误,并且在您完成本文后,我可以向您保证此错误消息将是早就没了。

修复(Fix)WordPress在上传图像时显示HTTP错误(HTTP Error)

图片大小(Image Size)

首先要检查的显而易见的事情是您的图像尺寸不超过您的固定宽度内容区域。例如,假设您要发布 3000X1500 的图像,但发布内容区域(由您的主题设置)只有 1000 像素,那么您肯定会看到此错误。

注意:(Note:)另一方面,请始终尝试将图像尺寸限制为 2000X2000。

虽然上述可能不一定能解决您的问题,但再次值得检查。如果您想查看有关图像的WordPress指南,请在此处阅读(read here)

增加你的 PHP 内存(Increase your PHP memory)

有时增加WordPress允许的PHP内存似乎可以纠正这个问题。好吧(Well),在您尝试之前,您永远无法确定,将此代码define('WP_MEMORY_LIMIT', '64M')添加到您的wp-config.php文件中。

增加 php 内存限制以修复 wordpress http IMAGE 错误

注意:不要触摸 wp-config.php 中的任何其他设置,否则您的站点将完全无法访问。如果您愿意,可以阅读有关编辑 wp-config.php 文件的(Editing wp-config.php file)更多信息。

要添加上述代码,只需转到您的 cPanel 并转到WordPress安装的根目录,您将在其中找到 wp-config.php 文件。

wp-config php文件

如果上述方法对您不起作用,那么您的网络托管服务提供商很可能不允许您增加PHP内存限制。在这种情况下,直接与他们交谈可以帮助您更改PHP内存限制。

将代码添加到 .htaccess 文件(Adding a code to .htaccess file)

要编辑您的.htaccess文件,只需导航到Yoast SEO > Tools > File Editor(如果您没有安装 Yoast SEO,那么您应该安装它,您可以在此处阅读有关如何配置此插件的信息(how to configure this plugin here))。在 .htaccess 文件中只需添加这行代码:

SetEnv MAGICK_THREAD_LIMIT 1

将 env magik 威胁限制设置为 1

添加代码后,只需单击“保存更改为 .htaccess”并检查问题是否已解决。

更改主题 functions.php 文件(Changing theme functions.php file)

实际上,我们只是要使用主题函数.php 文件告诉WordPress使用 GD 作为默认的WP_Image_Editor类。(WP_Image_Editor)WordPress最新更新开始,GD 已经被抽象化,  Imagick被用作默认图像编辑器,所以回到旧版本似乎可以为每个人解决问题。

推荐:(Recommended:)显然,还有一个插件可以做到这一点,去这里。(go here.) 但是,如果您想手动编辑文件,请在下面继续。

要编辑主题函数.php 文件,只需导航到Appearance > Editor并选择主题函数(Theme Functions)(function.php)。到达那里后,只需在文件末尾添加以下代码:

add_filter( ‘wp_image_editors’, ‘change_graphic_lib’ );

function change_graphic_lib($array) {
return array( ‘WP_Image_Editor_GD’, ‘WP_Image_Editor_Imagick’ );
}

注意:(Note:) 确保(Make)在结束PHP 符号 (?>)中添加此代码

主题功能文件编辑以使 gd 编辑器成为默认值

这是指南中最重要的修复WordPress在上传图像时显示HTTP错误,但如果您的问题仍未解决,请继续前进。

禁用 Mod_Security(Disabling Mod_Security)

注意:(Note:)不建议使用此方法,因为它可能会危及您的WordPress和主机的安全性。仅当您尝试了其他所有方法并且禁用此方法对您有效时才使用此方法,然后联系您的托管服务提供商并寻求支持。

再次通过  Yoast SEO > Tools > File Editor进入您的文件编辑器,并将以下代码添加到您的 .htaccess 文件中:

<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>

使用 htaccess 文件禁用 mod 安全性

然后单击“保存更改为 .htaccess”。

重新安装最新版本的 WordPress(Reinstalling the latest version of WordPress)

有时,由于WordPress(WordPress)文件损坏,可能会出现此问题,并且上述任何解决方案都可能根本不起作用,在这种情况下,您必须重新安装最新版本的WordPress

  • (Backup)从 cPanel备份您的插件文件夹((Plugin)下载(Download)它们),然后从WordPress禁用它们。之后,使用 cPanel 从您的服务器中删除所有插件文件夹。
  • 安装标准主题,例如二十(Twenty)十六,然后删除所有其他主题。
  • Dashboard > Updates重新安装最新版本的WordPress
  • 上传并激活所有插件(图像优化插件除外)。
  • 安装您想要的任何主题。
  • 现在尝试使用图像上传器。

这将修复WordPress在上传图像时显示HTTP错误。(HTTP)

杂项修复(Miscellaneous Fixes)

  • 不要在图像文件名中使用撇号,例如 Aditya-Farrad.jpg
  • 尝试更改文件的扩展名。
  • 禁用所有插件。
  • 确保(Make)您的主机安装了最新版本的PHP
  • 请联系您的托管服务提供商以获得支持。

本指南到此结束,我希望您现在已经解决了WordPress 在上传图片时显示 HTTP 错误(WordPress shows HTTP error when uploading images)的问题。如果您对这篇文章仍有任何疑问,请随时向他们提问。

喜欢并在社交网络中分享此博客文章,以帮助传播有关此问题的信息。(Like and share this blog post in the social networks to help spread the word about this problem.)



About the author

我是一名专业的计算机技术人员,在该领域拥有超过 10 年的经验。我专注于 Windows 7 和 Windows 应用程序开发,以及酷网站设计。我在该领域知识渊博,经验丰富,对于任何希望发展业务的组织来说都是一笔宝贵的财富。



Related posts