上傳圖片時如何修復 WordPress HTTP 錯誤

已發表: 2022-06-03

如果您的網站在 WordPress 上運行,WordPress HTTP 錯誤是您可能會遇到的常見錯誤之一。 這個錯誤結果非常令人沮喪,因為它發生的原因沒有實際原因。

在本文中,我們將研究此錯誤的全部內容以及您可以應用以解決錯誤的一些修復程序。

目錄

上傳媒體時 WordPress HTTP 錯誤是什麼

如何修復 HTTP 錯誤

  • 執行檢查和更改以確定問題是否是臨時的
  • 重命名圖像文件名
  • 暫時停用插件和主題
  • 修改 WordPress 圖像庫
  • 禁用 mod_security
  • 上傳文件夾的權限檢查
  • 增加 PHP 內存限制
  • 更新您的 PHP 版本

結論

上傳圖片時出現 WordPress HTTP 錯誤是什麼

WordPress HTTP 錯誤是在嘗試通過媒體上傳器上傳媒體項目時生成的一般錯誤。 這些媒體項目可以是視頻或圖像。 例如,您在上傳帖子的特色圖片時可能會遇到此錯誤。

HTTP 錯誤通常包含狀態碼。 此狀態代碼使您能夠確定錯誤的原因。 但是,此錯誤令人沮喪的是,WordPress 無法確定錯誤的確切原因。

在您的網站中使用圖像非常重要,因為圖像以更好的格式提供附加信息。 在搜索引擎中索引您的網站時,圖像還提供了 SEO 優勢。 因此,修復此類 HTTP 錯誤以便能夠在您的網站內上傳圖像或媒體非常重要。

此錯誤可能是由許多問題引起的。 其中一些包括:

i) 文件名錯誤:如果圖片文件名中包含特殊字符,上傳此類圖片時,很可能會遇到 HTTP 錯誤。

ii) 主題和插件問題:插件或主題可能包含阻礙在您的網站內上傳媒體項目的功能。

iv) 內存限制:如果您網站中的 WordPress 內存限制非常低,那麼您也很可能會遇到 HTTP 錯誤。

v) 圖像編輯器模塊:ImageMagick 等模塊中的資源限制也可能導致 HTTP 錯誤。

如何修復 HTTP 錯誤

為了修復 HTTP 錯誤,您可能需要根據您的站點設置嘗試多種解決方案。 這將使您能夠確定問題的原因並應用適當的修復。 該過程可能需要一些時間,具體取決於您確定錯誤原因的速度,但這絕對值得。

如果通過應用特定解決方案來解決錯誤,您不一定需要執行其他解決方案。

我們將介紹一些您可以在本指南中試用的建議解決方案。

執行檢查和更改以確定問題是否是臨時的

可以執行許多檢查和更改以確定 HTTP 錯誤問題是否是暫時的。 其中一些檢查和更改包括:

i) 刷新您的瀏覽器:有時互聯網連接中斷會導致圖像無法上傳到您的網站。 因此,您有必要首先刷新您的網絡瀏覽器並檢查您最終是否會出現這種情況。

仍然在您的瀏覽器中,您還可以清除瀏覽器緩存並檢查問題是否已解決。 或者,您還可以測試問題是否在您尚未測試站點的其他瀏覽器中或在隱身模式下複製。

ii) 文件大小檢查:如果您的圖像或媒體項目太大,那麼您也可能會遇到 HTTP 錯誤。 因此,您可以嘗試首先調整圖像大小並確保它不超過您的 WordPress 最大上傳大小。 此外,您還可以使用您喜歡的圖像優化插件來優化圖像。 此類插件的一些示例是 EWWW Image Optimizer 和 Imagify。

iii) 更改文件類型:某些服務器可能不支持各種圖像格式。 在這種情況下,如果您上傳不受支持的文件類型,您可能會遇到 HTTP 錯誤。 為確保最終不會出現這種情況,您需要更改圖像或媒體項目的文件類型。 完成後,在新文件類型下重新上傳,看看問題是否已解決。

重命名圖像文件名

您使用 WordPress 媒體上傳器上傳的圖像不應包含特殊字符。 其中一些字符包括撇號、冒號、等號、分號和國際語言符號。 但是,破折號和下劃線等字符可以安全使用。

為了檢查這是否是您的問題,因此您需要檢查上述任何一個字符是否存在於您的圖像文件名中。 如果是這樣,請將它們從文件名中刪除,然後再次嘗試上傳圖像。

暫時停用插件和主題

有時,HTTP 錯誤可能是由您安裝的插件引起的。 安全插件和圖像優化插件通常是導致錯誤的可能原因。

為了消除由插件引起的錯誤的可能性,您需要批量停用已有的插件。 這可以從 WordPress 儀表板中的插件部分實現,如下圖所示:

停用插件後,再次上傳您的圖像並檢查問題是否已解決。 如果是這樣,請一一重新激活插件並在每個插件激活實例中上傳圖像,以識別罪魁禍首插件。

在其他時候,HTTP 錯誤是由正在使用的 WordPress 主題引起的。 然而,這是一種罕見的情況,因為主題不會直接影響 WordPress 網站內的媒體上傳。

然而,為了消除 WordPress 主題成為問題原因的可能性,您可以切換到默認的 WordPress 主題,例如二十一二十一主題或二十二十二主題。 進行切換後,上傳您的圖像並檢查是否呈現 HTTP 錯誤。 如果不是,則表示問題是由您最初使用的主題引起的。

在上述任何一種情況下,如果您碰巧縮小了由插件或主題引起的問題,建議聯繫相應的產品作者。 否則,您可以選擇使用替代插件或主題。

修改 WordPress 圖像庫

WordPress 使用兩個 PHP 模塊來處理圖像。 這些是 Imagick 和 GD 庫。 默認情況下,WordPress 將使用其中一個模塊,具體取決於您的服務器安裝。

然而,Imagick PHP 模塊有時會耗盡分配的資源,例如內存限制。 在內存限制耗盡的情況下,您嘗試將圖像上傳到網站,您可能會遇到 HTTP 錯誤。

在上述情況下,切換到默認的 GD 庫是合適的。 為了實現這一點,您需要將以下代碼添加到主題的 functions.php 文件中:

 function wpb_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', 'wpb_image_editor_default_to_gd');

下面是一個示例截圖說明:

完成後,再次嘗試上傳圖像。 如果 HTTP 錯誤仍然存在,請刪除代碼並嘗試本文中列出的其他步驟。

禁用 mod_security

Mod_security 是一個 Apache 模塊,充當開源 Web 應用程序防火牆。 啟用後,它有時可能會在嘗試在您的網站內上傳圖片時導致 HTTP 錯誤。

為了測試問題是否是由模塊引起的,您可以先禁用它。 這很容易從您的 .htaccess 文件中實現。

首先,您需要使用 Filezilla 等軟件通過 FTP 訪問您的根站點文件。 或者,您可以通過託管面板進行操作。

接下來,選擇編輯 .htaccess 文件並將以下代碼添加到文件頂部:

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

如果您的主機使用 cPanel,您可以改為禁用 ModSecurity 模塊。 該模塊位於“安全”部分。

跟踪模塊後,單擊它並通過將狀態設置為“關閉”在您的域中禁用它。 以下是對此的示例屏幕截圖:

執行此操作後,請嘗試再次上傳您的圖像並檢查問題是否已解決。

上傳文件夾的權限檢查

WordPress 建議對目錄使用 755 權限模式。 有時,如果不是這種情況,您可能會遇到錯誤,例如此處討論的 HTTP 錯誤。 因此,重要的是要反查圖像上傳錯誤是否是由於上傳文件夾中的權限造成的。

uploads 文件夾位於站點文件的 Wp-content 目錄中。 您可以通過 FTP 或 Cpanel 等託管面板輕鬆找到該文件夾。

跟踪文件夾後,檢查權限是否匹配 755。

如果沒有,請將權限手動更改為 755。

完成後,嘗試重新上傳圖像並檢查 HTTP 錯誤現在是否已解決。

增加 PHP 內存限制

如果在上傳圖片或媒體項目時超出內存限制,您也可能會遇到 HTTP 錯誤。 這是因為服務器沒有足夠的內存來完成圖像/媒體上傳。 因此,您將需要增加您的 PHP 內存限制。

為了增加內存限制,可以通過在 wp-config.php 文件中添加一行代碼來實現。 wp-config.php 文件位於站點文件的根目錄中。 您也可以使用 Filezilla 等軟件通過 FTP 訪問它。 或者,您可以通過託管面板進行操作。

跟踪文件後,選擇對其進行編輯並添加以下代碼:

 define ('WP_MEMORY_LIMIT', '256M');

代碼應添加在以下行之前:

/* 就是這樣,停止編輯! 快樂出版。 */

下面是一個截圖說明:

完成此操作後,保存您的更改並嘗試再次上傳您的圖像/媒體項目以查看問題是否已解決。

更新您的 PHP 版本

WordPress 建議在您的站點中使用受支持的最新 PHP 版本。 使用過時的 PHP 版本可能會導致 HTTP 錯誤。 如果您的 PHP 版本已過時,您將在 WordPress 儀表板中對此進行通知。 以下是本通知的示例說明:

就目前而言,WordPress 根據此處的要求完全支持 PHP 7.4 版。 因此,建議您使用當前版本。 您可以要求您的託管服務提供商為您更新 PHP 版本。

如果您的主機使用 cPanel,您可以根據主機配置從“MultiPHP 管理器”或“選擇 PHP 版本”鏈接輕鬆更改 PHP 版本。

然後,您可以將最新的 PHP 版本應用到您的域,如下圖所示:

完成後,嘗試再次上傳圖像/媒體並檢查問題是否已解決。

結論

儘管 HTTP 錯誤的發生沒有具體原因,但仍然可以排除故障並修復錯誤。 在本文中,我們介紹了至少八種方法,您可以使用這些方法對網站中的錯誤進行故障排除和修復。

我們希望上面討論的至少一種方法可以幫助您修復網站中的 HTTP 錯誤。 如果您對此有任何疑問或新建議,請隨時在下面的評論部分發表評論。