我在使用Apache和PHP 5.3.X的Ubuntu 12.04上使用WordPress 3.4.1,当我登录到仪表板并添加新帖子时。然后尝试上传图片以设置为特色图片,我会看到一个红色框,上面显示“ HTTP错误”消息。

我读到有人说不要使用Flash上​​传器,而只是使用浏览器Uploader,但是当我尝试上传时,我只收到500 Internal Server Error。

我尝试在我的.htaccess文件顶部添加AddType x-mapp-php5 .php,但没有任何变化。 br />禁用所有插件均无效。
我尝试重新安装。祝您好运。

更新10/17/2016-
如果您使用的是自定义角色或功能,请尝试使用本机角色或功能,然后重试。

需要检查的内容:


文件所有权
文件权限
.htaccess配置
PHP版本7+
WordPress当前版本

如果在代理后面进行操作,请确保已正确配置代理服务器超时。



评论

AddType x-mapp-php5 .php背后的原因是什么?这似乎是特定于服务器的。我认为它更有可能破坏您的网站(例如PHP)(如果幸运的话,什么也不做),而不是进行任何改进?

#1 楼

我将以下代码放入我的functions.php文件中。它起作用了。 >此处理包括将图像移到媒体库数据库中,并生成WordPress始终希望主题可访问的不同大小的图像(“缩略图”,“中”,“大”)。

它导致使用“ GD”模块,因为它是第一个。在某些服务器设置中,对于某些图像情况(例如大像素尺寸),较新的“ Imagick”库不能与其他库很好地配合使用,因此强制使用“ GD”库是一个解决方法。

评论


创建一个小插件比将其放入functions.php中更好,因为如果更改主题,则会丢失代码。而且我确定您希望在更改主题后可以使用此功能😊

– EliasNS
18年1月15日,11:43



+1在新HostGator帐户上使用现成的WP 4.9.4设置解决此问题时,这对我有用。 @EliasNS noob在这里;为此制作一个小插件的正确方法是什么?

–安德鲁·扬克(Andrew Janke)
18-2-27在1:26

@AndrewJanke,您可以使用插件😅es.wordpress.org/plugins/pluginception

– EliasNS
18-2-27在11:07

“想像”?不是“ ImageMagick”?

– Peter Mortensen
19年6月8日在13:23



#2 楼

在聊天中使用@Wyck进行故障排除后,我们将范围缩小到了根本问题。

问题与我的服务器配置有关,没有为Apache / PHP分配适当的内存量。

如果有人遇到同样的问题,请尝试验证服务器配置设置中是否有足够的(64 MB +)服务器内存分配给Apache / PHP。您也可以将其添加到wp-config.php文件:

define('WP_MEMORY_LIMIT', '64MB');


如果上述解决方案不起作用,请阅读文章Image / Media Uploader有问题吗?进行进一步的故障排除。

尝试将以下.htaccess调整一项或全部添加到WordPress安装根目录中的.htaccess文件中。下面的每个解决方案之一,所以您知道哪个解决了。不要立即将它们全部粘贴到您的.htaccess文件中。

请尝试以下行:

AddType x-mapp-php5 .php


mod_security可能会引起问题。禁用它以查看是否是问题所在。为此,请在您的wp-admin目录中创建一个.htaccess文件。将此添加到它:

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


如果您正在基于Web服务器上的身份验证的访问控制(通常称为htpasswd,基本身份验证,受密码保护的目录或类似文件) ,WordPress无法为Flash Uploader,Cron和XMLRPC处理它。需要排除相关文件才能正常工作。请记住,这可能会破坏您的安全性考虑。

# Exclude the file upload and WordPress CRON scripts from authentication
<FilesMatch "(async-upload\.php|wp-cron\.php|xmlrpc\.php)$">
    Satisfy Any
    Order allow,deny
    Allow from all
    Deny from none
</FilesMatch>


最后一点:有人说,如果使用较低版本的PHP 5.3.X,可以尝试禁用它。 PHP安全模式。

如果您正在运行WordPress多站点并且收到与图像上传有关的HTTP错误或内部服务器错误,请阅读有关将图像上传到多站点导致HTTP错误的信息)。其他可能的故障排除想法和解决方案。

评论


好的...知道...您是否读过WP尝试分配最多256MB的内存,所以这个define('WP_MEMORY_LIMIT','64MB');如果可能的话应该更大。

– Damien
2012年7月26日在22:35

如果您使用的是WP 4.1.1,则AddType x-mapp-php5 .php不再是可行的解决方案,因为它会强制页面将PHP代码简单地打印为纯文本。

– cameronjonesweb
15年3月27日在6:02

如果使用的是nginx,则将其添加到您的网站配置文件中:client_max_body_size 128m;

– Flatron
15年6月28日在16:00

#3 楼

尝试在wordpress中上载媒体时遇到了相同的错误。在Chrome中,它显示为http:错误;在Firefox中,错误看起来大不相同。网络上有很多人花了很多时间来追查该错误的故事(I :-()。解决方案比比皆是,但没人能解释原因,至少不能以与症状相符的方式解释。

我的杰出贡献:我注意到该问题与apache2日志文件中指示的分段错误有关,这使我不安,因为难以诊断。

重新引导整个服务器需要消除了所有症状,突然之间我可以在Wordpress中再次上载媒体。令人沮丧的是,我不知道为什么会出现这种情况。重新启动实际上使我无法进行任何进一步的研究,而我现在必须等待(几周到几个月? ),希望问题再次出现。我希望这会有助于其他人寻求这个问题的原因。不过,我的妻子很高兴,因为我再也不能花整夜追踪这个问题了...

#4 楼

我已通过将我的所有者从root更改为apache来解决此问题。
之后,我尝试将图像上传到媒体中。我成功上传了图像。

#5 楼

我遇到过同样的问题。我尝试了各种修复程序,包括使用Force Image Magick插件将默认的图像处理器从PHP GD更改为ImageMagick。这有助于解决HTTP错误/ 500错误,但不再生成缩略图。然后,我再次停用了该插件,然后对我有所帮助的是这个问题的答案,好像图像调整大小无法正常工作。我的PHP_MEMORY_LIMIT设置为160MB,这是托管人允许的绝对最大值。

用于上传图像,使用PHP GD和生成缩略图时,图像的最大可能尺寸约为6000 x 6000 px。因此,不仅要检查文件大小,而且还要检查图像的大小,这一点很重要。即使尺寸较小的文件,上传较大尺寸的图像也会导致HTTP错误/错误500。

#6 楼

我已经经历过多次这样的问题,并通过在php.ini中增加memory_limit = 256M或在大多数时候在define( 'WP_MEMORY_LIMIT', '256M' );文件中添加wp-config.php(*如果需要的话,可以增加内存,超过256M)来解决。

另一种可能解决方案可能是授予\wp-content\uploads\文件夹权限;命令:chmod -R 0755 wp-content\uploads\

希望对您也有帮助。