URL地址最大長度問題


URL地址最大長度問題

搜索過程中發現,各瀏覽器與各Web Server對URL均有長度的限制如下:

在http協議中,其實並沒有對url長度作出限制,往往url的最大長度和用戶瀏覽器和Web服務器有關,不一樣的瀏覽器,能接受的最大長度往往是不一樣的,當然,不一樣的Web服務器能夠處理的最大長度的URL的能力也是不一樣的。
下面就是對各種瀏覽器和服務器的最大處理能力做一些說明.

  • Microsoft Internet Explorer (Browser)
    IE瀏覽器對URL的最大限制為2083個字符,如果超過這個數字,提交按鈕沒有任何反應。

  • Firefox (Browser)

    對於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個字符時

  • Apache (Server)
    能接受最大url長度為8,192個字符,但我的測試數據是8,182

  • Microsoft Internet Information Server(IIS)
    能接受最大url的長度為16,384個字符。

通過上面的數據可知,為了讓所有的用戶都能正常瀏覽,我們的URL最好不要超過IE的最大長度限制(2083個字符),當然,如果URL不直接提供給用戶,而是提供給程序調用,側這時的長度就只受Web服務器影響了。

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM