問題描述
我在 Ubuntu 12.04 上使用 Apache 和 PHP 5.3.X 中的 WordPress 3.4.1
當我登錄到儀錶板並添加一個新的帖子。然後嘗試上傳圖像以設置為特色圖像,我得到一個紅色框與消息”HTTP Error” 。
我已經閲讀了有關人們説不要使用 Flash 上傳器,只是使用瀏覽器上傳器,但是當我嘗試,我只是得到一個 500 內部服務器錯誤。
我已經嘗試在我的.htaccess 文件的頂部添加 AddType x-mapp-php5 .php,沒有改變的運氣。
禁用所有插件沒有任何效果。我嘗試了一個新的安裝。沒有運氣。
更新 10/17/2016 – 如果您使用自定義角色或功能,請嘗試使用本機角色/功能,然後重試。
最佳解決方案
在與 @Wyck 進行故障排除之後,我們已經縮小到基本問題。
這個問題與我的服務器配置沒有適當的內存分配給 Apache /PHP 有關。
如果有任何人有同樣的問題,請嘗試在您的服務器配置設置中驗證是否有足夠的 (64MB +) 服務器內存分配給 Apache /PHP 。您也可以將其添加到您的 wp-config.php 文件中:define('WP_MEMORY_LIMIT', '64MB');
如果上述解決方案不起作用,請閲讀本文 (Image/Media Uploader problems?) 以進一步解決問題。
嘗試在 WordPress 安裝的根目錄中的.htaccess 文件中逐個或全部以下.htaccess 調整。
認真地,嘗試下面的每個解決方案之一,所以你知道哪一個做的伎倆。不要將它們全部粘貼到您的.htaccess 文件中。
嘗試這一行:
AddType x-mapp-php5 .php
mod_security 可能會導致問題。禁用它,看看是否是問題。為此,請將.htaccess 文件放在 wp-admin 目錄中。添加到它:
<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>
如果您使用基於 Web 服務器上的身份驗證 (通常稱為 htpasswd,基本身份驗證,受密碼保護的目錄或類似的) 進行訪問控制,則 WordPress 無法處理 Flash Uploader,Cron 和 XMLRPC 。相關文件需要排除工作。請記住,這可能會破壞您的安全考慮。
# Exclude the file upload and WP 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 multi-site,並且正在接收與圖像上傳相關的 HTTP 錯誤或內部服務器錯誤,請閲讀 Uploading Images to Multi-Site Causes Failure to HTTP Error 以獲取其他可能的故障排除思想和解決方案。
次佳解決方案
我將以下代碼放入我的 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' );
}
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。
