大家在使用WordPress的過程中,可能會遇到一些不同的錯誤。其中,在我們將圖像和其他類型的文件上傳到媒體庫時,有時會發生WordPress HTTP錯誤。
解決方案1:確認HTTP錯誤
有時,服務器中的臨時故障可能會導致WordPress HTTP錯誤。在嘗試本文中的任何解決方案之前,首先應該確保錯誤是否始終存在。
首先等待幾分鐘,然后再次上傳媒體文件。如果第二次嘗試成功,則可能意味著在錯誤發生時出現了暫時性問題。
此外,修改文件名,清楚掉一些特殊字符和符號, 比如撇號、分號、亂碼字符等,最好只包含數字和字母,然后再上傳試試。文件名包含特殊字符是很容易導致問題的。
解決方案2:切換瀏覽器
WordPress HTTP錯誤很可能與網站無關,可能是瀏覽器意外發生的結果。
有報告稱,使用Google Chrome瀏覽器時會彈出HTTP錯誤。雖然它是一個出色的瀏覽器,但切換到其他瀏覽器可以讓您確認問題是否與瀏覽器有關。
解決方案3:停用插件
如果安裝插件后出現WordPress HTTP錯誤,則最好的辦法是將其停用。為了節省您的麻煩,已知圖像優化插件可能會導致此問題。因此,如果您有圖片優化插件,請暫時將其禁用,然后再次嘗試上傳圖片。
如果HTTP錯誤消失,則可以嘗試尋找替代的圖像優化器插件。或者,您可以嘗試與插件開發人員聯系,以進一步解決錯誤。
解決方案4:增加WordPress內存限制
WordPress中HTTP錯誤的常見原因是內存不足。它還可能導致許多其他問題,例如503服務不可用錯誤。要解決內存不足問題,只需在wp-config.php 文件中添加以下代碼 :
define ('WP_MEMORY_LIMIT', '256M');
上面的代碼將您的PHP內存限制增加到256MB。在添加之前,您還應該通過檢查PHP info來確認服務器上的最大可用內存限制。因為如果PHP內存限制為64M,那么即使你通過上面的代碼定義WP的內存限制為256M,它也是不會生效的。
解決方案5:將GD設置為默認圖像處理庫
WordPress默認可以使用Imagick或GD庫處理圖像。盡管它們都很出色,但Imagick卻因為耗盡可用內存并導致HTTP錯誤而臭名昭著。
為避免此問題,需要將GD庫設置為默認編輯處理庫。只需將下面的代碼放到主題的 functions.php 文件中即可:
function hs_image_editor_default_to_gd( $editors ) {
$gd_editor = 'WP_Image_Editor_GD';
$editors = array_diff( $editors, array( $gd_editor ) );
array_unshift( $editors, $gd_editor );
return $editors;
}
add_filter( 'wp_image_editors', 'hs_image_editor_default_to_gd' );
保存更改,然后嘗試再次上傳圖像。如果HTTP錯誤仍然存在,請還原代碼更改。
解決方案6:編輯.htaccess
如果你使用的是Apache環境,可以嘗試通過.htaccess文件處理問題。 .htaccess文件一般在你的WordPress根目錄。它控制請求在許多其他功能中的去向。
要修復WordPress中的HTTP錯誤,請打開.htaccess并添加以下代碼:
SetEnv MAGICK_THREAD_LIMIT 1
完成后,嘗試再次上傳文件看下問題是否已解決。如果不起作用,則可以測試更多代碼片段:
SecFilterEngine Off
SecFilterScanPOST Off
或者
Satisfy Any
Order allow,deny
Allow from all
Deny from none
嘗試單獨添加它們,保存更改,然后再次上傳媒體文件。
解決方案7:檢查主題
如果在安裝或更新WordPress主題后出現錯誤,則主題可能是罪魁禍首。一個好的方法切換到WP默認自帶的官方主題。如果更換主題就恢復正常了,說明可能是之前的主題單獨存在問題,也可能是主題與插件之間的不兼容。 可以嘗試和主題作者聯系和反饋問題。
解決方案8:檢查您的PHP版本
從WordPress 5.2版開始,WordPress需要PHP 5.6.20 或更高版本才能平穩運行。沒有達到這個要求可能會導致HTTP錯誤。有些主機空間默認使用舊版本的PHP,這意味著無論您嘗試什么,都無法將圖像上傳到WordPress媒體庫。
首先,登錄虛擬主機控制面板,查看是否有可以切換PHP版本的功能,如果有,嘗試切換到符合要求的PHP版本。如果沒有,請與您的主機商聯系,以確保他們使用的是 PHP 5.6.20 及更高版本。
解決方案9:清除緩存
嘗試上述所有解決方案后,您還會遇到WordPress HTTP錯誤嗎?也許您之前已經解決了該錯誤,但是您看到的“錯誤”來自本地緩存。在您認為沒有解決方案可用了的時候,可以嘗試清除瀏覽器緩存。





