瀏覽器對URL長度的限制

2021-06-20 00:07:09 字數 1238 閱讀 2340

各瀏覽器與各web server對url均有長度的限制如下:

在http協議中,其實並沒有對url長度作出限制,往往url的最大長度和使用者瀏覽器和web伺服器有關,不一樣的瀏覽器,能接受的最大長度往往是不一樣的,當然,不一樣的web伺服器能夠處理的最大長度的url的能力也是不一樣的。

下面就是對各種瀏覽器和伺服器的最大處理能力做一些說明.

microsoft internet explorer (browser)

ie瀏覽器對url的最大限制為2083個字元,如果超過這個數字,提交按鈕沒有任何反應。在我的測試中,這個數字得到驗證。

微軟官方也有說明:

對於firefox瀏覽器url的長度限制為65,536個字元,但當我測試時,最大只能處理8182個字元,這是因為url的長度除了瀏覽器限制外,還會受web伺服器的限制,而我本機使用的是ubuntu apache伺服器,最大處理能力為8192個字元(相差10個字元,不知道是什麼原因),一旦超過這個長度,伺服器就返回如下錯誤資訊。

safari (browser)

url最大長度限制為 80,000個字元。

opera (browser)

url最大長度限制為190,000個字元。

google (chrome)

url長度一旦超過8182個字元時,出現如下伺服器錯誤:

寫道request-uri too large

the requested url's length exceeds the capacity limit for this server.

apache/2.2.12 (ubuntu) server at 127.0.1.1 port 80

apache (server)

能接受最大url長度為8,192個字元,但我的測試資料是8,182,10個字元,差別不在,資料具體符合。

microsoft internet information server(iis)

能接受最大url的長度為16,384個字元。

通過上面的資料可知,為了讓所有的使用者都能正常瀏覽,我們的url最好不要超過ie的最大長度限制(2038個字元),當然,如果url不直接提供給使用者,而是提供給程式呼叫,側這時的長度就只受web伺服器影響了。

注:可能有些朋友會想當然的認為,如果最大長度限制為2038字元,是不是引數差不多可以傳遞1000個左右的漢字。這樣認為其實是不對的,對於中文的傳遞,最終會為urlencode後的編碼形式進行傳遞,如果瀏覽器的編碼為utf8的話,乙個漢字最終編碼後的字元長度為9個字元。

不同瀏覽器對URL最大長度的限制

1.今天碰到乙個bug,window.open後面的頁面,接收引數不全,導致後台報錯。實驗了一下。發現是使用get方法請求伺服器時,url過長所致 微軟官方的說明 safari browser url最大長度限制為 80,000個字元。opera browser url最大長度限制為190,000個...

各種瀏覽器url最大長度限制

雖然http協議的 rfc規範並沒有詳細規定url的最大字元長度限制,但實際上,在瀏覽器或者伺服器中總會存在限制的。本文中說所的字元是指ascii字元。微軟 internet explorer 微軟幫助 上說ie7之前 包括ie7 的瀏覽器,對url的最大長度限制是2,083個字元。firefox ...

瀏覽器 cookie 限制

一 瀏覽器允許每個網域名稱所包含的 cookie 數 microsoft 指出 internet explorer 8 增加 cookie 限制為每個網域名稱 50 個,但 ie7 似乎也允許每個網域名稱 50 個 cookie update to internet explorer s cooki...