php設置臨時文件夾
這其實是PHP出於對上傳文件的一種安全性因素的考慮,存放於臨時的目錄中、在你需要的時候再自行取出。你從臨時文件夾中取出的時候要對其進行安全性檢查(對於安全性要求較高的)
⑵ php上傳文件時為什麼要用到臨時文件名tmp_name
上傳都是先保存在臨時文件夾中,需要程序來移動或復制文件。
⑶ 更改iis上傳文件的默認大小
如果是ASP或.net的
第一步:修改IIS設置,允許直接編輯配置資料庫。先打開,Internet信息服務
第二步:先在服務里關閉iis admin service服務,找到windows\system32\inetsrv\下的metabase.xml, 打開,找到ASPMaxRequestEntityAllowed 把他修改為需要的值,默認為204800,即200K,如把它修改為102400000(100M)。
然後重啟iis admin service服務。
辦法二:
新建一個文本文件,內容如下:
set providerObj=GetObject("winmgmts:/root/MicrosoftIISv2")
set vdirObj=providerObj.get("IIsWebVirtualDirSetting='W3SVC/1/ROOT'")
WScript.Echo "Before: " & vdirObj.AspMaxRequestEntityAllowed
vdirObj.AspMaxRequestEntityAllowed=102400000
vdirObj.Put_()
WScript.Echo "Now: " & vdirObj.AspMaxRequestEntityAllowed
然後保存為.vbs文件,如:vf.vbs
然後在命令行模式下,執行 cscript 文件路徑及文件名,如:cscript d:\vf.vbs
這樣ASP上傳大小就更改為了上面設置的:102400000位元組 (100兆)
關於win2003上傳限制解決方案的補充說明
到微軟站點載了IIS6 Resource Kit Tools(http://www.microsoft.com/downloads/details.aspx?FamilyID=56FC92EE-A71A-4C73-B628-ADE629C89499&displaylang=en),安裝後利用Metabase Explorer修改了(local)\LM\W3SVC\AspMaxRequestEntityAllowed屬性(默認為200K=204800),修改為1G就是了;同時修改了AspScriptTimeout屬性調整下時限,就可以上傳大文件了。
此時發現AspMaxRequestEntityAllowed丟之,點右鍵添加new屬性為asp,設置自己需要的大小,然後確定即可~~~
如果是PHP的
打開php.ini,首先找到
file_uploads = on ;是否允許通過HTTP上傳文件的開關。默認為ON即是開
upload_tmp_dir ;文件上傳至伺服器上存儲臨時文件的地方,如果沒指定就會用系統默認的臨時文件夾
upload_max_filesize = 8m ;望文生意,即允許上傳文件大小的最大值。默認為2M
post_max_size = 8m ;指通過表單POST給PHP的所能接收的最大值,包括表單里的所有值。默認為8M
一般地,設置好上述四個參數後,上傳<=8M的文件是不成問題,在網路正常的情況下。
但如果要上傳>8M的大體積文件,只設置上述四項還一定能行的通。
更多請關注:
http://www.chenyu.me/read-htm-tid-6320-fpage-2.html
⑷ PHP中上傳文件的臨時目錄的問題
move_uploaded_file(「臨時目錄」,「新文件」)
這個臨時目錄是用$_FILES['userfile']['tmp_name']獲取的
新文件 就是:
新文件目錄+文件名
這個自己定義 。。。。。比如 我寫個例子
$upfile="D:/aaa/" 目錄名
$filename=$_FILES['userfile']['name'] 獲取的原文件名
新文件就是 $newfile=$upfile.$filename;
用.連接起來。
move_uploaded_file($_FILES['userfile']['tmp_name'],$newfile))
執行之後就會移動的D:/aaa/下面
⑸ php如何把上傳的文件弄成臨時文件,24小時之後自動刪除
windows的計劃任務或者linux的定時器,定時去訪問一個php文件(這個php文件負責判斷文件上傳日期,然後刪除)。當然做不到自動刪除,只可能通過這種方式輪詢。