HTTP的URL最長可以有多長

2021-08-30 12:43:33 字數 660 閱讀 2706

最近有朋友問我,在瀏覽器中輸入的url最長可以有多長呢?這個問題比較奇怪,因為我用了這麼多年的計算機,還沒有遇到url不夠長的情況。但是在企業應用中還真有不少這種情況,因為需要動態產生一些鏈結和一些相應的資訊,為了把連線和相應的資訊聯絡在一起,特別是在瀏覽器關閉cookie功能的時候,在url後面可能會帶有長長的尾巴。

事實上,如果希望在提交http請求的同時附帶上長長的資訊,應該使用http post方法,而不是http get(也就是通常將資訊放在url中)。但是,構建http post方法要比http get麻煩,靈活性也差,所以很多web開發設計人員選擇了這種帶有長長尾巴的url方式。

那麼http url到底有限制嗎,限制是多少呢?事實上乙個url的長度限制可能在客戶端(瀏覽器)和伺服器端都存在。瀏覽器端的限制會根據瀏覽器的不同而不同,在 windows上,opera對url的限制是4k左右,ie是在2k左右。firefox比較大,我做過測試它的限制應該》10k。如果超出了限制,瀏覽器就會擷取部分,或者乾脆拒絕傳送這個超長的請求。

[img]

根據朋友的要求,測試了乙個長度為10k的url,在firefox中,通過伺服器端的設定(將http服務的緩衝區長度調整到12k),能夠正確返回結果。而在ie中沒有任何返回結果。在伺服器端執行snoop命令監控每乙個網路包,發現超長的請求根本沒有發到伺服器端,在ie瀏覽器中就拒絕了。

你見過最長的hello word 有多長?

assume cs codesg,ds datasg,es tablesg datasg segment db hello word db welcome to masm datasg ends tablesg segment dw 4000 dup 0 tablesg ends codesg se...

C 找資料夾中,最長的名字有多長

testforonlyc cpp 定義控制台應用程式的入口點。include stdafx.h include include include include include include include using namespace std typedef std vector stringl...

電解電容的壽命有多長?

電解電容的壽命跟電容的工作環境有關,假若乙個 40 105度,5000小時的電容,所謂的5000小時是說在105度的工作環境下壽命是5000h。工作環境的溫度每降低 10度,壽命增加一倍。反之亦然。環境溫度過高,超過了電解電容器的最高額定溫度,將會使電解電容器中電解液沸騰產生過壓將洩壓部件產生不可逆...