通过WordPress Media Uploader上传图像时出现HTTP错误

时间:2014-04-28 14:24:21

标签: php wordpress apache

每次我尝试使用WordPress Media Uploader(WP管理员>媒体>添加新内容)上传图片时,上传速度都会停留在13%左右,我会在屏幕"HTTP error"上显示错误消息。

到目前为止,我已经在我的WordPress根目录中创建了一个php.ini文件,其中包含以下内容:

memory_limit = 256M
upload_max_filesize = 16M
post_max_size = 64M

我还在我的/ wp-admin /文件夹中放了一个php.ini文件(与上面完全相同)。

使用phpinfo()核对后,我发现这些更改已生效,但尚未解决我遇到的“HTTP错误”问题。

我正在使用1and1.co.uk专用服务器(托管),因此没有root访问权限。 1and1已确认在服务器上启用了普通CGI(如果这有很大不同,则不是快速CGI?)。

为什么会发生这种错误?我还有什么办法可以解决它吗?

更新:我使用不同的浏览器和不同的设备进行了一些测试:

Acer Aspire One上网本

  • Chrome - 存在问题
  • FireFox - 存在问题
  • IE - 工作
  • Safari - 存在问题

宏碁Aspire 5552笔记本电脑

  • Chrome - 正常工作
  • FireFox - 工作
  • IE - 工作
  • Safari - 工作

Google Nexus 7平板电脑

  • Chrome - 正常工作
  • FireFox - 工作
  • IE - 工作
  • Safari - 工作

三星Galaxy G4 Mini

  • Chrome - 正常工作
  • FireFox - 工作
  • IE - 工作
  • Safari - 工作

正如您所看到的,问题仅存在于我的Acer Aspire One上网本的Chrome,FF和Safari中。可能是这个问题的根源是什么?

12 个答案:

答案 0 :(得分:10)

我将以下代码放入我的functions.php文件中。它有效!

add_filter( 'wp_image_editors', 'change_graphic_lib' );
function change_graphic_lib($array) {
return array( 'WP_Image_Editor_GD', 'WP_Image_Editor_Imagick' );
}

答案 1 :(得分:1)

我经常遇到(IMHO)非常挑剔的WordPress媒体上传者的问题。几乎没有失败,他们是jpegs。我几乎总能通过在Photoshop中打开它们并使用“Save for web ...”命令解决问题,除其他外,该命令会删除嵌入的图标预览并执行其他优化。出于某种原因,这几乎总是适合我。这让我相信文件本身存在WordPress窒息的东西,并不总是与大小有关(虽然这有时可能是一个问题)。

答案 2 :(得分:1)

将以下代码放入您激活的主题的functions.php文件中。

如果您的媒体上传器在上传图片时出现HTTP错误,请尝试使用以下过滤器更改图片库。

下面用于更改图形库的过滤器。

我希望它对你有所帮助。

add_filter( 'wp_image_editors', 'change_graphic_lib' );

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

答案 3 :(得分:0)

尝试较小的图片 - 文件大小和显示尺寸 - 并查看是否可以上传。

mod_security可能会导致问题。禁用它以查看是否存在问题。

在wp-admin目录中创建.htaccess文件。添加它:

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

答案 4 :(得分:0)

这是一个浏览器问题。 WordPress媒体上传器使用JavaScript,你测试的一些浏览器似乎不适合这样的上传器。

您总是有一个链接,可以将新媒体页面添加到非javascript上传中。测试并查看问题是否仍然存在。

更新

我们评论了我的第一个想法,它不是一个浏览器问题。

所以,如果它与后端有关,我想你应该开始检查图像的类型和大小。访问服务器日志应该会对您有所帮助。

使用Apache,指令MaxRequestLen始终是一个重要因素。你检查过了吗?

答案 5 :(得分:0)

只需从此处https://github.com/getsource/default-to-gd安装插件,然后忘记错误。

答案 6 :(得分:0)

我使用Hiawatha web server,在我的情况下,问题是MaxRequestSizeMaxUploadSize值设置得太小。

我已将其添加到我的/etc/hiawatha/hiawatha.conf

中解决了这个问题
Binding {
        Port = 80
        MaxRequestSize = 1000000
        MaxUploadSize = 550
}
Binding {
        Port = 443
        SSLcertFile = /etc/hiawatha/serverkey.pem
        MaxRequestSize = 1000000
        MaxUploadSize = 550
}

答案 7 :(得分:0)

很容易修复。只需点击图片中的右键,属性和解锁图片,它就在底部。那可行。我在论坛上尝试了所有其他的想法而没有。适用于Windows 10

答案 8 :(得分:0)

我遇到的问题是100k以上的文件都失败了。以下对我有用:

将以下行添加到fcgid.conf:

  

FcgidMaxRequestLen 52428800

答案 9 :(得分:0)

把它作为你的主题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' );
}

答案 10 :(得分:-1)

您可能想尝试这样做:将大图片(使用FTP或CPanel)上传到wordpress folder/wp-content/uploads/2013或类似的内容。

然后尝试将这些图像添加到您的wordpress网站(发布精选图片/产品图片或其他)。您可以在&#34;上传图片或所有图片&#34;下找到左侧的图片。

答案 11 :(得分:-2)

尝试编辑链接。在我的情况下,它通过更改名称来解决。最初它是&#34; webpic&#39; 1_1.jpg&#34;我删除了#34; &#39; &#34;并改为&#34; webpic1_1.jpg&#34;。它奏效了!...