php 上传大文件主要涉及配置upload_max_filesize和post_max_size两个选项(转)
今天在做上傳的時(shí)候出現(xiàn)一個(gè)非常怪的問(wèn)題,有時(shí)候表單提交可以獲取到值,有時(shí)候就獲取不到了,連普通的字段都獲取不到了,苦思冥想還沒(méi)解決,最后問(wèn)了師 傅,師傅看了說(shuō)挺奇怪的,然后問(wèn)我upload_max_filesize的值改了嗎,我說(shuō)改了啊,師傅也解決不了了。過(guò)了一會(huì)師傅問(wèn) post_max_size改了嗎,我說(shuō)那個(gè)和上傳沒(méi)關(guān)系吧,師傅沒(méi)理我,我還是照著自己的想法繼續(xù)測(cè)試,弄了半天還是不行,最后試了師傅提的意見(jiàn),成功 了,原來(lái)上傳是和post_max_size有關(guān)系的。
總結(jié):php.ini配置文件中的默認(rèn)文件上傳大小為2M, 默認(rèn)upload_max_filesize = 2M,即文件上傳的大小為2M,如果你想上傳超過(guò)8M的文件,比如20M,你必須設(shè)定upload_max_filesize = 20M。但是光設(shè)置upload_max_filesize = 20M還是無(wú)法實(shí)現(xiàn)大文件的上傳功能,你必須修改php.ini配置文件中的post_max_size選項(xiàng),其代表允許POST的數(shù)據(jù)最大字節(jié)長(zhǎng)度,默 認(rèn)為8M。如果POST數(shù)據(jù)超出限制,那么$_POST和$_FILES將會(huì)為空。要上傳大文件,你必須設(shè)定該選項(xiàng)值大于 upload_max_filesize指令的值,我一般設(shè)定upload_max_filesize和post_max_size值相等。另外如果啟用 了內(nèi)存限制,那么該值應(yīng)當(dāng)小于memory_limit選項(xiàng)的值。文件上傳的其他注意事項(xiàng)
在上傳大文件時(shí),你會(huì)有上傳速度慢的感覺(jué),當(dāng)超過(guò)一定的時(shí)間,會(huì)報(bào)腳本執(zhí)行超過(guò)30秒的錯(cuò)誤,這是因?yàn)樵趐hp.ini配置文件中max_execution_time配置選項(xiàng)在作怪,其表示每個(gè)腳本最大允許執(zhí)行時(shí)間(秒),0 表示沒(méi)有限制。你可以適當(dāng)調(diào)整max_execution_time的值,不推薦設(shè)定為0。
轉(zhuǎn)載于:https://www.cnblogs.com/huojing/articles/3840005.html
總結(jié)
以上是生活随笔為你收集整理的php 上传大文件主要涉及配置upload_max_filesize和post_max_size两个选项(转)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: LeetCode Combination
- 下一篇: /usr/bin/ld: cannot