GET與POST傳遞數據的最大長度可以達到多少

各類web開發語言中,各個頁面之間基本都會進行數據的傳遞,web開發裏面比較經常使用的數據傳遞方式有get post,一直以來我都只知道get傳遞的數據量要比post傳遞的數據量要少,因此傳遞大數據量仍是要用post,可是 get post 這兩種方式最大能傳遞多少數據呢?一直沒搞清楚。php


今天因爲工做的須要,還必須得把這個問題搞明白一下了,下面就說說GET與POST傳遞數據的最大長度可以達到多少吧。web


get 是經過URL提交數據,所以GET可提交的數據量就跟URL所能達到的最大長度有直接關係。不少文章都說GET方式提交的數據最多隻能是1024字節,而實際上,URL不存在參數上限的問題,HTTP協議規範也沒有對URL長度進行限制。這個限制是特定的瀏覽器及服務器對它的限制。IE對URL長度的限制是2083字節(2K+35字節)。對於其餘瀏覽器,如FireFox,Netscape等,則沒有長度限制,這個時候其限制取決於服務器的操做系統。即若是url太長,服務器可能會由於安全方面的設置從而拒絕請求或者發生不完整的數據請求。瀏覽器


post 理論上講是沒有大小限制的,HTTP協議規範也沒有進行大小限制,但實際上post所能傳遞的數據量大小取決於服務器的設置和內存大小。由於咱們通常post的數據量不多超過MB的,因此咱們不多能感受的到post的數據量限制,但實際中若是你上傳文件的過程當中可能會發現這樣一個問題,即上傳個頭比較大的文件到服務器時候,可能上傳不上去,以php語言來講,查緣由的時候你也許會看到有說PHP上傳文件涉及到的參數PHP默認的上傳有限定,通常這個值是2MB,更改這個值須要更改php.conf的post_max_size這個值。這就很明白的說明了這個問題了。http://www.weixinmi.net/安全

相關文章
相關標籤/搜索