如何修復 WordPress 中的“抱歉,出於安全原因不允許此文件類型”錯誤

已發表: 2019-02-12

如果您嘗試將文件上傳到媒體庫並收到“抱歉,出於安全原因不允許使用此文件類型”錯誤,您可能會不知如何繼續。 幸運的是,有幾種方法可以修復錯誤,並使事情恢復正常。

在本文中,我們將解釋為什麼 WordPress 中存在“抱歉,出於安全原因不允許此文件類型”錯誤。 然後,我們將向您展示解決錯誤並將任何文件上傳到您的 WordPress 網站的五種方法。

讓我們開始吧!

訂閱我們的 YouTube 頻道

了解 WordPress 中的“抱歉,出於安全原因不允許此文件類型”錯誤

這個 WordPress 錯誤背後的原因比看起來要簡單得多。 您可能不知道,但 WordPress 對您可以上傳的文件類型有限制。 當您嘗試上傳被禁止的文件類型時,會出現“抱歉,出於安全原因不允許此文件類型”錯誤。

WordPress 中的“抱歉,出於安全原因不允許使用此文件類型”錯誤。

這些限制背後的原因是為了防止由於文件上傳漏洞引起的安全問題。 意外或有意上傳惡意可執行文件可能會對您的網站造成永久性損害。 其他人可以讓黑客訪問您的網站或您的服務器。

但是,雖然此錯誤會阻止您將文件上傳到您的站點,但它也會為您的用戶這樣做。 沒有任何“障礙”,幾乎任何東西都可以上傳到您的網站,這當然會帶來很大的風險。

簡而言之,“抱歉,出於安全原因,不允許使用此文件類型”錯誤是為了保護您的站點,當然這不是您可能遇到的最糟糕的 WordPress 錯誤。 即便如此,如果您必須上傳被禁止的文件類型,這個善意的錯誤仍然會帶來問題。

如何修復 WordPress 中的“抱歉,出於安全原因不允許此文件類型”錯誤(4 種方法)

當涉及到這個特定的錯誤時,您有多種處理方法。 根據您的情況,下面列出的方法之一應該可以提供簡單的解決方案。

但是,一些託管服務提供商也會限制您可以上傳的文件類型。 如果您是其中之一,我們在下面列出的方法將無法解決錯誤。 在這些情況下,聯繫您的託管服務提供商應該是您的第一站。 他們應該能夠幫助您解決問題。

1. 通過更改 WordPress 多站點設置添加允許的文件類型

WordPress Multisite 使您能夠使用單個 WordPress 安裝創建一個網站網絡。 例如,如果您想讓用戶創建他們自己的博客,或者如果您是一家國際公司並且想要使用子域來創建可以同時更新的特定國家/地區站點,這會很方便。

與單站點 WordPress 安裝不同,Multisite 有一個設置,可讓您輕鬆允許 WordPress 通常不允許的文件上傳。 要訪問它,導航到網絡設置網絡管理控制台設置下:

WordPress 多站點網絡設置。

在“上傳設置”標題下方,您會找到“上傳文件類型”設置,您可以在其中為您希望允許的文件類型添加擴展名。

在 WordPress Multisite 中上傳文件類型設置。

保存更改後,這將更新網絡中所有站點的允許文件類型,使您和您的用戶能夠上傳此設置中包含的任何文件類型。

2. 使用插件修改批准的文件類型

有幾個插件可以讓您上傳禁止的文件類型,例如文件管理器和增強型媒體庫。 這些插件具有使您能夠添加允許的多用途 Internet 郵件擴展 (MIME) 類型以上傳到 WordPress 的設置。

MIME 類型描述文件包含的內容,並告訴您的瀏覽器如何正確顯示它。 例如,文件擴展名.jpg對應於 MIME 類型image/jpeg,並在 Web 瀏覽器中顯示為圖像。

我們將使用增強型媒體庫插件添加新的允許上傳的 MIME 類型。 您可以在 WordPress 的插件區域內快速安裝和激活插件:

增強型媒體庫插件。

激活插件後,我們將轉到我們的設置,看到有一個MIME 類型 > 媒體選項:

使用增強型媒體庫插件啟用的 Mime 類型設置。

有兩種方法可以允許特定 MIME 類型的上傳。 第一種方法是在“允許上傳”列中簡單地選擇與所需 MIME 類型相對應的框。 但是,如果未列出您想要的類型,則必須選擇頁面頂部的添加新 MIME 類型

增強型媒體庫 mime 類型設置。

這將添加一個新行,您可以在其中輸入擴展名、MIME 類型和標籤。 接下來,為新的 MIME 類型選擇允許上傳框。 如果您改變主意,可以使用每行末尾的按鈕刪除條目,或選擇恢復 WordPress 默認 MIME 類型作為原始設置。

3.通過編輯主題的functions.php文件使用Upload_Mimes過濾器

您可以改為手動更改站點允許的 MIME 類型。 為此,您需要訪問主題的functions.php文件並使用稱為“過濾器”的WordPress 功能。

functions.php文件定義了 WordPress 站點的行為或功能。 在 WordPress 中,您可以使用過濾器來修改平台的默認功能。 通過將upload_mimes過濾器添加到functions.php ,當您嘗試上傳禁止的文件類型時,您將更改 WordPress 的默認行為。

首先,備份您的站點,以確保在您編輯重要站點文件時出現問題,您可以通過某種方式將其恢復。 然後,您需要使用 FTP 客戶端(例如 FileZilla)通過 FTP 訪問您的functions.php文件。

連接到站點的服務器後,您可以在wp-content目錄下的主題文件夾中找到您的functions.php文件。 右鍵單擊該文件並選擇View/Edit

選擇functions.php 文件以通過FTP 進行編輯。

該文件將在您的文本編輯器中打開,您可以在其中添加以下代碼:

function my_custom_mime_types( $mimes ) {

// New allowed mime types.
$mimes['svg'] = 'image/svg+xml';
$mimes['svgz'] = 'image/svg+xml';
$mimes['doc'] = 'application/msword';

// Optional. Remove a mime type.
unset( $mimes['exe'] );

return $mimes;
}
add_filter( 'upload_mimes', 'my_custom_mime_types' );

將所需的 MIME 類型及其相應的擴展名添加到數組中。 您還可以將希望禁止的 MIME 類型添加到可選的“刪除 MIME 類型”部分,或者在不適用時將其刪除。

此方法使您能夠指定要允許的 MIME 類型,因此您仍然可以控制上傳到站點的內容,以幫助防止文件上傳漏洞。 完成編輯後,請務必保存更改。

4. 在您​​的wp-config.php文件中允許未經過濾的上傳

如果您想允許上傳所有文件類型,您可以通過編輯wp-config.php 來實現——該文件包含與您的站點數據庫相關的信息。 再一次,您需要備份您的網站,以防您在編輯時出現問題。

然後您將使用 FTP 訪問wp-config.php,如我們在前面的方法中所述。 該文件應位於您網站的根目錄中。 選擇查看/編輯以打開文本編輯器。

選擇 wp-config.php 文件以通過 FTP 進行編輯。

您可以將以下代碼添加到文件中,在“/* 就是這樣,停止編輯。 快樂的博客。 */”:

define('ALLOW_UNFILTERED_UPLOADS', true);

完成編輯後保存更改。 請注意,這樣做意味著沒有什麼可以阻止您或用戶意外(或故意)將惡意文件上傳到您的網站,因此在訴諸此選項之前嘗試其他選項可能是明智之舉。

結論

當您對網站進行更改時,WordPress 錯誤可能會導致挫折。 但是,當涉及到抱歉,出於安全原因不允許此文件類型錯誤時,有多種解決方案可讓您上傳 WordPress 默認不允許的文件。

在本文中,我們討論了 WordPress 中導致此錯誤的原因以及它存在的原因。 然後我們提供了四種可能的解決方案來修復錯誤:

  1. 通過更改 WordPress 多站點設置來添加允許的文件類型。
  2. 使用插件修改批准的文件類型。
  3. 通過編輯主題的functions.php文件來使用upload_mimes過濾器。
  4. 在您的wp-config.php文件中允許未經過濾的上傳。

您對 WordPress 中的抱歉,出於安全原因不允許此文件類型錯誤有疑問嗎? 在下面的評論部分讓我們知道!

文章縮略圖:1000s_pixels/shutterstock.com