PHP特點(diǎn)之文件上傳3——常見缺陷
對?MAX_FILE_SIZE?設(shè)置的值,不能大于 ini 設(shè)置中?upload_max_filesize?選項(xiàng)設(shè)置的值。其默認(rèn)值為 2M 字節(jié)。
如果內(nèi)存限制設(shè)置被激活,可能需要將?memory_limit?設(shè)置的更大些,請確認(rèn)?memory_limit?的設(shè)置足夠的大。
如果?max_execution_time?設(shè)置的值太小,腳本運(yùn)行的時(shí)間可能會(huì)超過該設(shè)置。因此,也請保證?max_execution_time?足夠的大。
Note:?max_execution_time?僅僅只影響腳本本身運(yùn)行的時(shí)間。任何其它花費(fèi)在腳本運(yùn)行之外的時(shí)間,諸如用函數(shù)?system()?對系統(tǒng)的調(diào)用、?sleep()?函數(shù)的使用、數(shù)據(jù)庫查詢、文件上傳等,在計(jì)算腳本運(yùn)行的最大時(shí)間時(shí)都不包括在內(nèi)。
Warning:max_input_time?以秒為單位設(shè)定了腳本接收輸入的最大時(shí)間,包括文件上傳。對于較大或多個(gè)文件,或者用戶的網(wǎng)速較慢時(shí),可能會(huì)超過默認(rèn)的60 秒。如果?post_max_size?設(shè)置的值太小,則較大的文件會(huì)無法被上傳。因此,請保證?post_max_size?的值足夠的大。
不對正在操作的文件進(jìn)行驗(yàn)證可能意味著用戶能夠訪問其它目錄下的敏感信息。
請注意?CERN httpd?似乎會(huì)丟棄它從客戶端獲得的 content-type mime 頭信息中第一個(gè)空格后所有的內(nèi)容,基于這一點(diǎn),CERN httpd?不支持文件上傳特性。
鑒于文件路徑的表示方法有很多種,我們無法確保用使用各種外語的文件名(尤其是包含空格的)能夠被正確的處理。
開發(fā)人員不應(yīng)將普通的輸入字段和文件上傳的字段混用同一個(gè)表單變量(例如都用?foo[])。
相關(guān)文章:
1. PHP驗(yàn)證碼工具-Securimage2. Python使用Excel將數(shù)據(jù)寫入多個(gè)sheet3. 使用本機(jī)IIS?Express開發(fā)Asp.Net?Core應(yīng)用圖文教程4. 如何用JS實(shí)現(xiàn)簡單的數(shù)據(jù)監(jiān)聽5. 解決Docker network Create加--subnet后遇到問題6. php基于DOMDocument操作頁面元素實(shí)例 原創(chuàng)7. 利用CSS制作3D動(dòng)畫8. HTML-Canvas的優(yōu)越性能以及實(shí)際應(yīng)用9. HTML iframe標(biāo)簽用法案例詳解10. 基于Python實(shí)現(xiàn)全自動(dòng)下載抖音視頻

網(wǎng)公網(wǎng)安備