[原創]Cookie太大導致頁面無應答的問題

來源:互聯網
上載者:User

出現的問題:

上個月,有朋友負責的網站在網域名稱變更(變更後的網域名稱比變更前更長)後,出現了個別使用者在登入時失敗的情況。他確認在升級網域名前後,程式和伺服器的配置都沒有變更過,環境如下:Windows Server 2003,IIS6,ASP.net 2.0

出現的現象:

1、個別使用者登入時服務端無應答

2、查詢IIS的日記,發現日記顯示是應答http 200正常

3、通過服務端和用戶端捉包,探索服務端沒有應答包到用戶端

解決過程:

google,baidu了半天,沒找到相關問題的解決方案。通過以上現象,同時在用戶端使用HttpAnalyzer軟體捉取能正常登入使用者的包,發現在使用者登入後,服務端會寫入10多個cookie,包括使用者加密後的一些設定檔(如上次登入時間、登入IP等一些個人配置資料),初步懷疑是由於IIS寫入Cookie時有問題,因為網域名稱升級後比原來的長,導致cookie的大小變大了。

查詢RFC2965協議,發現 在5.3節有對cookie限制的描述:合計300個cookies,每個網域名稱20個cookies,每個cookie(含名稱、值、有效期間等)4096位元組。但比對了系統寫入的cookie大小,也差不多有2900個位元組,離規定好像還比較遠,找不到其它原因也只能試一下減少cookie了,於時去掉了兩個沒有什麼用處的cookie再試,問題就解決了。

總結:

1、好像在IIS6下特定環境下就會出現這個問題,因為當時整個項目有10多台Web伺服器做了F5,但只有2台出現這個問題。針對這個問題,我在IIS7下也進行了一下測試,發現當Cookie的大小達到30000多位元組時,就會出現有應答為200的包,但應答的內容為空白,在IE上顯示為“  Internet Explorer cannot display the webpage ”,所以具體能使用cookie有多大,IIS6和IIS7下標準不一。

2、建議不要將使用者配置等過大的資訊寫入cookie,搞不清楚什麼時候IIS就出錯了

 

以上是真實項目過程在遇到的問題,希望能協助到大家。謝謝

 

--------------------

轉載請註明出處

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.