新聞中心
較低的wordpress上傳限制可阻止您上傳大文件,插件和主題。如果您要建立一個擁有大量多媒體資源的網(wǎng)站,那這將是一個很大的障礙。在這種情況下,有必要增加WordPress或服務(wù)器(或兩者)中的最大上傳大小。

創(chuàng)新互聯(lián)建站長期為上1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為灤平企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計、成都網(wǎng)站制作,灤平網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
也經(jīng)常在WordPress交流群里看到站長咨詢關(guān)于WordPress上傳文件大小限制的問題,因此,我們有必要針對WordPress上傳大小限制話題撰寫一篇文章,以解眾惑。
根據(jù)不同的服務(wù)器托管提供商和服務(wù)器,有很多方法可以解決此問題。我們將在本教程中盡可能全面地介紹設(shè)置WordPress最大上傳大小限制。
WordPress最大上傳限制是多少?
將大文件上傳到服務(wù)器會消耗大量服務(wù)器資源。為了防止用戶因上傳文件造成服務(wù)器超時,WordPress默認(rèn)的最大上傳大小通常為4 MB到128 MB。通常,服務(wù)器托管提供商或者服務(wù)器軟件在服務(wù)器級別設(shè)置此限制。
WordPress還包含定義此限制的常量,但在大多數(shù)情況下它們不能覆蓋服務(wù)器級別的設(shè)置。
服務(wù)器默認(rèn)最大上傳文件大小,不同的服務(wù)器提供商有不同的設(shè)置,一般不會超過128MB。
要驗證這一點,請轉(zhuǎn)到WordPress網(wǎng)站的“媒體庫”。在這里,嘗試上傳超出此最大上傳文件大小限制的文件。您會看到一條類似以下內(nèi)容的錯誤消息:
在WordPress中上傳大文件時出錯
“超過了站點的最大上傳限制”主要有兩個原因:安全性和效率。這會阻止站點所有者和其他用戶(包括惡意行為者)上傳大文件(例如,高分辨率圖像,大視頻)。
否則,可能導(dǎo)致網(wǎng)站服務(wù)器無法使用,從而使網(wǎng)站無法正常運行。更糟糕的是,它可能會使網(wǎng)站徹底癱瘓!
如何檢查WordPress當(dāng)前的最大上傳限制
有很多方法可以檢查您的WordPress網(wǎng)站當(dāng)前的最大上傳限制,具體如下。
在媒體庫中
檢查網(wǎng)站當(dāng)前最大上傳限制的最便捷的方法是轉(zhuǎn)到WordPress儀表盤,然后從此處轉(zhuǎn)到媒體>媒體庫。點擊添加新文件按鈕以啟用媒體上傳工具。
WordPress最大上傳文件大小
國外部分服務(wù)器托管站點時,最大上傳文件大小消息將顯示在“選擇文件”按鈕下方。如果您使用其他網(wǎng)絡(luò)托管服務(wù)提供商,則可能會在此處看到其他限制。
您也可以直接轉(zhuǎn)到媒體>添加新內(nèi)容,并在底部看到相同的消息。
WordPress媒體庫中的“最大上傳文件大小”
同樣,您可以在此處看到最大128 MB的上傳文件大小。
在站點健康信息中
WordPress 5.2添加了Site Health Info工具,以幫助您更好地調(diào)試WordPress網(wǎng)站。在這里,您幾乎可以找到有關(guān)服務(wù)器和WordPress配置的所有信息。
由于服務(wù)器和WordPress都設(shè)置最大上傳文件大小,在此界面上有兩種方法可以找到最大上傳文件大小值。
首先,您可以在“媒體處理”下拉列表中找到“最大單一上傳文件大小”的值。
“站點健康”信息面板中的媒體處理設(shè)置
第二種方法是在“服務(wù)器”下拉列表可以看到與您的網(wǎng)站服務(wù)器設(shè)置相關(guān)的信息。找到“上傳最大文件大小”的對應(yīng)值,即你的WordPress的最大上傳限制。下面截圖的演示站點的最大上傳文件大小限制為128 MB。
“站點健康”信息面板中的服務(wù)器設(shè)置
您還可以查看其他PHP常量及其值,例如:
PHP post max size:定義POST請求的最大上傳限制。PHP memory limit:定義為PHP分配的內(nèi)存。應(yīng)將其設(shè)置為等于或大于最大上傳限制。否則,上傳將失敗。
一般情況下配置越低的虛擬主機,這些選項所設(shè)置的值越小。這也是為什么小編常常建議站長盡可能選購VPS作為WordPress網(wǎng)站的服務(wù)器,因為允許站長自行配置這些選項的值。
為什么增加WordPress最大上傳限制?
有許多原因可能導(dǎo)致您需要增加WordPress網(wǎng)站的最大上傳文件大小,最常見的原因有:
- 通過WordPress管理儀表盤安裝大型主題或插件。
- 定期更新WordPress網(wǎng)站內(nèi)容以保持讀者參與度并獲得更多回報。這包括定期上傳新圖像,視頻,音頻和其他媒體。但是,當(dāng)您的上傳文件有大小限制時,這并不總是可行的。
- 上傳大型視頻或圖像作為網(wǎng)站的背景或Header。
- 直接從站點出售數(shù)字文件,例如電子書,照片,視頻,主題和插件。有時,這些文件高達數(shù)百兆字節(jié)(或更多)。
上面我們了解了WordPress最大上傳文件大小的基礎(chǔ)知識,下面讓我們一起深入了解如何修改最大上傳限制值。
增加WordPress最大上傳文件大小的10種方法
我們可以通過多種方法來解決WordPress的最大上傳大小問題,下面十種方法將由淺及深,或者由簡單到復(fù)雜排列。
聯(lián)系服務(wù)器托管提供商以獲取幫助
如果您在上傳文件文件大小限制方面遇到問題,請聯(lián)系服務(wù)器托管提供商以尋求幫助,這是最快的解決方案之一。增加上傳限制是一項技術(shù)支持的瑣碎任務(wù),因此大多數(shù)托管公司可以幫助您快速解決此問題。
修改服務(wù)器或站點配置文件對于不熟悉服務(wù)器配置的人們來說始終是一項艱巨的任務(wù)。因此,我們建議您首先嘗試此方法。
注:一般虛擬主機,如需要修改WordPress最大上傳限制值,可能甚至必須通過聯(lián)系服務(wù)器提供商技術(shù)客服來修改。
在WordPress多站點中增加最大上傳文件大小
如果您正在運行WordPress Multisite網(wǎng)絡(luò),則可以修改網(wǎng)絡(luò)的最大上傳文件大小。
首先,轉(zhuǎn)到“網(wǎng)絡(luò)管理”儀表板,然后轉(zhuǎn)到“設(shè)置”>“網(wǎng)絡(luò)設(shè)置”屏幕。在此處向下滾動,直到找到“上傳設(shè)置”部分,您將會找到 Max upload file size 字段。
“網(wǎng)絡(luò)設(shè)置”中的“最大上傳文件大小”字段
WordPress Multisite中的最大上傳文件大小的默認(rèn)值為1500 KB(?1.5 MB)。您可以將其更改為更高的值,然后單擊“保存更改”按鈕。
注:您不能從此處規(guī)避服務(wù)器級別的最大上傳大小限制。如果您在此處設(shè)置的限制高于服務(wù)器的最大上傳大小限制,則服務(wù)器將忽略它。您可以使用上述方法來查找Web服務(wù)器的配置。
“網(wǎng)絡(luò)設(shè)置”中新的“最大上傳文件大小”
本次演示,我們將新的最大上傳文件大小設(shè)置為131072 KB(?128 MB)。
您還可以限制上傳到多站點網(wǎng)絡(luò)中單個站點的文件的總大小。一般默認(rèn)情況下它是禁用的。
更新 “.htaccess” 文件
如果您的網(wǎng)站服務(wù)器在Apache上運行,則可以更新站點的.htaccess文件以增加WordPress最大上傳大小。您可以在WordPress網(wǎng)站的根目錄中找到.htaccess文件。
根據(jù)PHP文檔,三個PHP指令負(fù)責(zé)WordPress處理上傳的方式,分別是:
- upload_max_filesize
- post_max_size
- memory_limit
在上面的“站點健康信息”部分中討論了它們。如果您修改了這三個指令的值以接納您的文件大小,將會有所幫助。例如,如果您計劃上傳的最大文件是32 MB,我們建議您進行以下設(shè)置:
- upload_max_filesize = 32M
- post_max_size = 64M
- memory_limit = 128M
注意,所有值都使用M而不是MB。這就是PHP處理其指令的方式。
上傳文件除了文件本身之外,還可以包含其他信息。因此,為所有其他與上傳相關(guān)的指令提供一些預(yù)留的空間是個好主意。您可以閱讀“如何解決WordPress內(nèi)存限制錯誤(2種方法)”教程,以獲取更多信息。
通過FTP/SFTP或服務(wù)器提供商的文件管理器訪問.htaccess文件。
查找“ .htaccess”文件
使用文本編輯器或代碼編輯器打開 .htaccess文件,然后添加以下代碼:
php_value upload_max_filesize 32M php_value post_max_size 64M php_value memory_limit 128M php_value max_execution_time 300 php_value max_input_time 300
您可以在上面的代碼中注意到另外兩個PHP指令:max_execution_time和max_input_time。它們定義服務(wù)器在一個PHP任務(wù)上花費的時間。您上傳的內(nèi)容越大,花費的時間就越大。您需要將它們的值設(shè)置為適合您的用例的數(shù)字。
注:使用上述方法后,您可能會收到500 Internal Server Error。這很可能是因為您的服務(wù)器正在CGI模式下運行PHP。在這種情況下,您不能在.htaccess文件中使用以上命令。
創(chuàng)建或修改 “php.ini” 文件
在php.ini文件中,您可以定義對默認(rèn)PHP設(shè)置的更改。通常,它包含定義文件超時,最大上傳大小和資源限制的指令。
使用SSH或FTP,您可以在WordPress根目錄中找到php.ini文件。在某些情況下,您可能無法在此處找到它。不用擔(dān)心!您可以在站點的根目錄中創(chuàng)建一個具有相同名稱的新文件。
創(chuàng)建一個新的php.ini文件
使用代碼或文本編輯器,將以下代碼添加到現(xiàn)有或新的php.ini文件中:
upload_max_filesize = 32M post_max_size = 64M memory_limit = 128M
進行更改后,請不要忘記保存文件。某些主機不允許您通過此方法修改PHP設(shè)置。在這種情況下,您可以繼續(xù)嘗試以下解決方案。
創(chuàng)建或修改 “.user.ini” 文件
如果服務(wù)器托管服務(wù)提供商已鎖定了全局PHP設(shè)置,則他們可能已將服務(wù)器配置為使用.user.ini文件而不是php.ini文件。
與php.ini和.htaccess文件一樣,您可以在網(wǎng)站的根目錄中找到.user.ini。如果找不到,則可以在同一位置創(chuàng)建一個新的.user.ini文件。按照前面方法中描述的相同過程創(chuàng)建一個新的 php.ini文件。
接下來,將以下代碼添加到您的.user.ini文件中:
upload_max_filesize = 32M post_max_size = 64M memory_limit = 128M
有沒有發(fā)現(xiàn),這只是重復(fù)了前面的方法,只是文件名不同。
通過cPanel更改PHP選項
如果服務(wù)器托管提供商使用cPanel控制面板來幫助您管理服務(wù)器和站點配置,則可以通過其界面更改最大上傳文件的大小。
首先,請轉(zhuǎn)到cPanel儀表盤,然后在“Software”部分下選擇“Select PHP Version” 。
cPanel儀表盤-“選擇PHP版本”
在這里,您可以更改服務(wù)器當(dāng)前PHP版本并啟用/禁用許多PHP擴展。單擊導(dǎo)航菜單中的“Options”鏈接以轉(zhuǎn)到“PHP Options”面板。
轉(zhuǎn)到cPanel中的“ PHP Options”設(shè)置
向下滾動這里修改PHP指令,如值upload_max_filesize,post_max_size,memory_limit,max_execution_time,和max_input_time,您可以在此處可設(shè)置的最大值取決于您當(dāng)前的服務(wù)器配置。
cPanel中的“ PHP選項”
如果您對這些值有任何疑問,建議您與托管服務(wù)提供商聯(lián)系。最新的cPanel儀表盤會自動保存更改。但是,如果您使用的是較早的cPanel版本,請確保點擊保存按鈕以保存更改。
在Nginx中增加最大上傳文件大小
Nginx是另一個類似于Apache的網(wǎng)絡(luò)服務(wù)器,但它還有很多其他功能。通常,Nginx可以比Apache處理更多的并發(fā)請求,從而使其更快。閃電博也是使用Nginx解決方案。
如果您在Nginx上運行WordPress網(wǎng)站,則需要同時修改php.ini和nginx.conf文件。我們之前已經(jīng)處理過前一個文件。后者稱為Nginx配置文件。
在Nginx服務(wù)器上,您可以在找到php.ini文件/etc/php/7.4/fpm/php.ini。根據(jù)您安裝的PHP版本,路徑可能會略有不同。
upload_max_filesize = 64M post_max_size = 128M
您無需在上面的文件設(shè)置memory_limit,因為Nginx對它的處理方式有所不同。有關(guān)更多信息,您可以查看Stack Overflow這篇文章。保存php.ini文件后,去終端重新啟動PHP-FPM,以啟用更改:
sudo service php7.4-fpm restart
同樣,重啟PHP的指令代碼可能會略有不同,具體取決于服務(wù)器上安裝的PHP版本。
接下來,使用Nginx的client_max_body_size指令設(shè)置新的最大上傳大小限制。您需要在nginx.conf文件中聲明此指令,您可以在/etc/nginx/nginx.conf找到該文件。
您可以在http {...}塊,server {...}塊或location {...}塊中聲明此指令。
在http塊中進行設(shè)置會影響此服務(wù)器上托管的所有網(wǎng)站/應(yīng)用。
http {
...
client_max_body_size 128M;
}
在server塊中定義它只會影響此服務(wù)器托管的特定站點/應(yīng)用程序。
server {
...
client_max_body_size 128M;
}
在location塊定義則僅影響指定的目錄(如文件,上傳目錄)。
location /files {
...
client_max_body_size 128M;
}
不要忘記保存文件并重新啟動Nginx以應(yīng)用更改,您可以在終端中使用以下命令重啟NG:
sudo service nginx reload
部分服務(wù)器提供商不允許客戶直接訪問Nginx配置。但是,可以與支持團隊聯(lián)系更改。
使用WordPress的 “upload_size_limit” 過濾器
WordPress 2.5引入了upload_size_limit過濾器,該過濾器過濾php.ini中允許的最大上傳大小。甚至WordPress都使用此過濾器來顯示允許的最大上傳大小,例如在“媒體庫”和“站點健康信息”界面中。
以下是WordPress貢獻者Drew Jaynes實際使用的此過濾器的示例。它定義了所有非管理員角色的上傳大小限制。
/**
* Filter the upload size limit for non-administrators.
*
* @param string $size Upload size limit (in bytes).
* @return int (maybe) Filtered size limit.
*/
function filter_site_upload_size_limit( $size ) {
// Set the upload size limit to 10 MB for users lacking the 'manage_options' capability.
if ( ! current_user_can( 'manage_options' ) ) {
// 10 MB.
$size = 1024 * 10000;
}
return $size;
}
add_filter( 'upload_size_limit', 'filter_site_upload_size_limit', 20 );
上面的代碼使用WordPress的 manage_options 功能僅針對非管理員設(shè)置此限制。您可以修改代碼以定位特定的用戶角色或用戶ID。
使用WordPress插件
并非所有人都喜歡使用SSH或FTP/SFTP來處理代碼。如果您不習(xí)慣編寫或編輯代碼,則可以改用WordPress插件。
WP Maximum Upload File Size插件
我們將在此處使用WP Maximum Upload File Size插件。撰寫本文時,它是WordPress插件市場中唯一可幫助您完成此操作的最新插件。
首先,請安裝并啟用WP Maximum Upload File Size插件。點擊WordPress管理后臺左側(cè)菜單的“Wp upload limit”,在這里,您可以看到托管提供商和WordPress設(shè)置的最大上傳文件大小。
WP最大上傳文件大小設(shè)置
在這里,您可以看到WordPress設(shè)置的最大上傳文件大小小于托管服務(wù)提供商設(shè)置的最大文件大小。因此,您可以通過選擇最大上傳文件大小并顯示下拉菜單來設(shè)置更大的上傳限制。
注:如果您要設(shè)置的最大上傳文件大小上限大于托管服務(wù)提供商設(shè)置的上限,則無法通過此插件進行操作。為此,您需要聯(lián)系您的托管服務(wù)提供商。
通過FTP/SFTP上傳文件
不想使用上述所有方法?您還可以通過FTP/SFTP上傳大文件。
使用SFTP上傳文件到服務(wù)器
如果要上傳大量文件,這是最快的方法。
有時,WordPress無法識別通過FTP/SFTP上傳的文件。在這種情況下,您可以使用免費插件- Add From Server將上傳的文件導(dǎo)入WordPress。
或者,您可以通過使用WP-CLI導(dǎo)入圖像,從命令行直接執(zhí)行相同操作。wp media import命令允許您從本地文件或URL創(chuàng)建附件。
不要編輯 “wp-config.php” 文件
編輯wp-config.php文件不再起作用。之所以在這里提及它是因為我們發(fā)現(xiàn)許多網(wǎng)上教程都將其列為修改WordPress最大上傳限制的合法方法。
該方法是通過FTP/SFTP或SSH進入站點的根目錄,然后編輯wp-config.php文件。
查找wp-config.php文件
建議您將以下代碼添加到wp-config.php文件中:
@ini_set( 'upload_max_size' , '64M' ); @ini_set( 'post_max_size', '128M'); @ini_set( 'memory_limit', '256M' );
它無法工作,因為您只能使用 ini_set() function來設(shè)置屬于PHP_INI_ALL可變模式的PHP指令。
upload_max_size與post_max_size作為屬于PHP_INI_PERDIR多變的模式。您只能通過php.ini,.htaccess,http.conf或.user.ini進行設(shè)置。
如果您以前嘗試過此方法而沒有看到任何結(jié)果,那么現(xiàn)在您知道它為什么會失敗。
驗證WordPress網(wǎng)站的新的最大上傳限制
最后,我們需要驗證WordPress網(wǎng)站中是否實現(xiàn)了新的最大上傳文件大小限制。為此,請按照上面討論的相同步驟檢查WordPress中的最大上傳文件大小。
轉(zhuǎn)到WordPress信息中心中的媒體庫,然后檢查最大上傳文件大小限制是否已更改。
驗證“媒體庫”中新的最大上傳文件大小
是的,它已經(jīng)改變了。那是成功的!
您也可以轉(zhuǎn)到“站點健康”面板,然后在“媒體處理”和“服務(wù)器”下拉列表中檢查是否相同。
在“站點健康信息>媒體庫”中驗證新的最大上傳文件大小
在“站點運行>狀況信息>服務(wù)器”中驗證新的最大上傳文件大小
小結(jié)
如您所見,在WordPress中修改最大上傳限制并不是太復(fù)雜。無論您是要構(gòu)建大量媒體作品集網(wǎng)站還是要安裝大型主題,只需知道要在哪里查找以及要使用哪些命令或工具即可。
在大多數(shù)情況下,與您的托管服務(wù)提供商聯(lián)系就足夠了。但是,如果您遇到麻煩的主機,我們將向您展示一些替代方法,您可以在遷移到更好的主機之前嘗試一下。
上述有沒有涵蓋了所有你所需要的內(nèi)容嗎?您是否也曾經(jīng)遇到了上載文件大小限制的情況,然后你是如何處理的?留言與我們一起深入交流。
網(wǎng)頁名稱:如何修改WordPress最大上傳文件大小限制
鏈接地址:http://m.5511xx.com/article/cophgcd.html


咨詢
建站咨詢
