以下文檔回顧了在WordPress中上傳圖片時出現的最常見問題 ,並提供了解決方案:
- 圖像文件名
- 上載圖片時出現HTTP錯誤
- 無法在媒體庫中創建目錄和損壞的圖像
- 文件超出了upload_max_filesize
檢查圖像文件名
首先要檢查的是圖像的名稱。如果文件名包含任何特殊字元(例如分號或等號等),則可能無法上傳。
上載圖片時出現HTTP錯誤
當您嘗試上傳像素大小較大的圖像(例如3000 x 2000像素的圖像)時,會發生這種情況。對於您的伺服器而言,這太大了。
即使當圖像小於3000 x 2000像素時,某些伺服器也會顯示錯誤,這完全取決於伺服器資源。
HTTP錯誤。
解決方案
以下是一些可用於解決WordPress中的HTTP錯誤問題的解決方案。
上載前請減小圖像尺寸。
- 如果您使用的是Mac,則可以使用預覽應用程序來減小圖像的大小。
- 對於PC,您可以使用Paint Application。
- 在Customizr和Customizr Pro主題中,帶框的滑塊圖像大小為1170px x 500px,因此您可以在上傳之前縮小該大小的圖像。
- 反覆嘗試減小圖像尺寸,直到您可以上傳它而沒有任何錯誤。
增加PHP內存
- 請與您的網路託管公司聯繫,並要求他們增加您的PHP內存限制。逐漸增加,直到您能夠上傳可接受的圖像尺寸為止。寬度至少為2000px。
- 如果您願意自己做,則可以在wp-config.php中添加以下內容。僅當您的託管程序包具有該內存量時,此方法才有效。逐漸增加,直到您能夠上傳可接受的圖像尺寸為止。
define('WP_MEMORY_LIMIT','256M');
- 您也可以嘗試通過在.htaccess文件中添加以下內容來增加內存。僅當您的託管程序包具有該內存量時,此方法才有效。逐漸增加,直到您能夠上傳可接受的圖像尺寸為止。
注意:某些虛擬主機不允許這樣做,您將收到500個內部伺服器錯誤。在這種情況下,您將必須刪除此代碼。php_value memory_limit 256M
- 如果可以訪問Web伺服器的php.ini文件,則可以找到memory_limit並增加其大小。僅當您的託管程序包具有該內存量時,此方法才有效。逐漸增加,直到您能夠上傳可接受的圖像尺寸為止。
內存限制= 256M
ModSecurity
- 您的伺服器可能具有mod_security,並且可能引起問題。
禁用它以查看是否是問題所在。
為此,請在您的wp-admin目錄中創建一個.htaccess文件。
向其添加以下代碼:<IfModule mod_security.c> SecFilterEngine關閉 SecFilterScanPOST關閉 </ IfModule>
這將對wp-admin中的上載文件接收代碼禁用mod_security。
注意:如果這導致您的伺服器上出現任何錯誤,請刪除它。
基於身份驗證的訪問控制
- 如果您在Web伺服器上使用基於身份驗證的訪問控制(通常稱為htpasswd,基本身份驗證,受密碼保護的目錄或類似名稱),則WordPress無法為Flash Uploader,Cron和XMLRPC處理它。需要排除相關文件才能工作。在WordPress根文件夾下的.htaccess文件中的以下位置。
#從身份驗證中排除文件上傳和WP CRON腳本 <FilesMatch「(async-upload \ .php | wp-cron \ .php | xmlrpc \ .php)$」> 滿足任何 訂單允許,拒絕 全部允許 全都拒絕 </ FilesMatch>
插件衝突
- 您可能已經安裝了導致此問題的插件。請一次停用一個插件。清除緩存和瀏覽器歷史記錄,然後重新訪問媒體上傳器以上傳您的圖像(將像素大小保持較小),看看是否成功。
無法在媒體庫中創建目錄和損壞的圖像
如果您無法在媒體庫中看到縮略圖,並且在上載圖像時遇到以下錯誤。
無法創建目錄wp-content / uploads / 2016/02。伺服器的父目錄是否可寫?
當您的wp-content / uploads文件夾的許可權已更改時,會發生這種情況。當您不小心更改了它的許可權,或者您的網路託管技術人員可能正在做一些維護工作,並且不小心重置了它的文件夾許可權時,可能會發生這種情況。
解
- 使用您喜歡的FTP程序登錄到伺服器。(如何在WordPress中使用FTP軟體?)
- 導航到wp-content / uploads /
- 使用您的FTP程序將上載文件夾許可權更改為755,適用於所有附帶的項目。
這將確保您的上載文件夾中的所有項目和文件夾都設置為755。 - 清除瀏覽器緩存。
- 登錄WordPress並訪問您的媒體庫,您應該會看到上傳圖像的所有縮略圖。
- 您應該能夠上傳圖像而不會看到無法創建目錄錯誤。
文件超出了upload_max_filesize
當您在php.ini文件中設置的PHP上載最大文件大小(upload_max_filesize)小於嘗試上載的圖像的文件大小時,就會發生這種情況。
在系統信息中查看PHP Upload Max Filesize的價值,您需要將其增加到一個更高,更健康的值。
..超出此網站的最大上傳大小。
解決方案
以下是一些可用於解決WordPress中超出上傳上限文件大小問題的解決方案。
聯繫您的託管公司
是的,這是最喜歡的方式。請與您的託管公司聯繫,並向他們顯示您的錯誤的屏幕截圖,或向他們發送錯誤消息。要求他們協助增加以下值,直到您能夠上載圖像為止。您的託管公司可能對這些值有限制。
upload_max_filesize post_max_size max_execution_time max_input_time
優選為以下值。
upload_max_filesize 64M post_max_size 64M max_execution_time 300 max_input_time 300
編輯php.ini文件
在php.ini文件是PHP的默認配置文件。大多數共享主機公司不允許訪問此文件。如果確定可以訪問伺服器上的php.ini文件,則可以繼續以下步驟。
- 使用您的FTP程序訪問它。(如何在WordPress中使用FTP軟體?)
- 在嘗試編輯該文件之前,請備份該文件的副本。
- 打開它並一次查找以下值(它們位於文件中的不同行)
upload_max_filesize post_max_size max_execution_time max_input_time
- 最好將它們編輯為以下值。
upload_max_filesize 64M post_max_size 64M max_execution_time 300 max_input_time 300
使用.htaccess文件
在WordPress中,有一個.htaccess文件。WordPress使用此文件來操縱Apache(伺服器)如何從其根目錄和子目錄提供文件。因此,此文件非常重要。不要編輯此文件中的原始內容。您可以在文件末尾添加一些指令以增加PHP Upload Max Filesize。 在此處了解有關WordPress中htaccess文件的更多信息。
- 使用您喜歡的FTP程序訪問WordPress安裝。
- 轉到根目錄,即您可以在其中找到wp-config.php文件的目錄。您應該能夠找到您的.htaccess文件。
- 將其副本下載到計算機上以另存為備份。
- 打開它,並將以下內容添加到文件末尾的換行符中。
php_value upload_max_filesize 64M php_value post_max_size 64M php_value max_execution_time 300 php_value max_input_time 300
- 保存所做的更改並覆蓋伺服器上的.htaccess文件。
- 返回您的系統信息,並檢查您的值是否已更改。
如果沒有,您應該與您的託管公司聯繫,以獲取有關在php.ini文件中編輯這些值的幫助。