頁面在 Firefox 上顯示隨機符號而不是錯誤消息
隨機地,在一些項目中,一些頁面顯示隨機符號而不是錯誤消息。像這個 :
��������
I�%&/m�{J�J��t��$@�����iG#)�*��eVe]f@�흼 ��{���{��;�N’���?\fdl��J ��ɞ!����?~|?“��Ey’)=��y6����h������Ųi��- ez����7i �4�̧i���Ίe��Ͼ|uz����:�}���U {�����������~�ȗu.-������l>F ‘�����Y�l��$k�tF������ {�� ��[����’U���|6J�lR��b6��юG�k�^ ,ӏ������}<~<�;c�R鱕iV��m�|��� �yDl���tRͮ� |N��>�Ey�裟�k ��!z���� Ѳ�Y)5��G��A�8$D��Ѥ̦oI��]�P�"�/��v[����W�~����m`N�rvk���Mqz3 ������它發生得很隨機,似乎是由不同的因素引起的。在這裡,它在文件上傳。
我們在此頁面上使用 SharpZipLib,但程式碼路徑不應使用它。
有誰知道為什麼會發生這種情況,以及如何防止它?
**編輯:**它只發生在 Firefox 上。IE(8) 正確顯示錯誤資訊。
**編輯 2:**它似乎是隨機發生的,僅在某些頁面/站點上。另一個 IIS 站點上的相同頁面執行良好。似乎只在 IIS7 上這樣做;我沒有關於 IIS6 的報告,也沒有在我的開發機器上遇到它。
**編輯 3:**看起來它只在頁面崩潰時發生。
**編輯 4:**好的,所以,它只發生在 IIS7 上,並且只有當我收到錯誤 500 時。我認為可能是 IIS 錯誤頁面有問題。我該如何嘗試改變它們?
Firebug 給了我這些標題:
Response
Cache-Control private
Content-Type text/html; charset=utf-8
伺服器 Microsoft-IIS/7.0
X-AspNet-Version 2.0.50727
X-Powered-By ASP.NET
日期 Mon, 04 Apr 2011 10:31:24 GMT
Content-Length 2284
Request
Host xxxx
User-Agent Mozilla /5.0 (Windows; U; Windows NT 6.1; fr; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16 (.NET CLR 3.5.30729; .NET4.0E)
接受 text/html,application/xhtml+xml ,application/xml;q=0.9, / ;q=0.8
Accept-Language fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding gzip,deflate
Accept-Charset ISO -8859-1,utf-8;q=0.7,*;q=0.7
保持連接 115
連接保持連接
推薦人 xxxxxx
Cookie xxxxxx
有什麼辦法讓我說“在這個頁面上,我根本不接受 gzip 壓縮”?
我沒有找到任何真正的解決方案,但我找到了一個令人滿意的解決方法。
請記住,問題僅在以下條件下出現:
- 該網站在 IIS7 / Windows Server 2008 上配置。
- 顯示垃圾符號的頁面實際上已經崩潰。產生的“垃圾”實際上是一個未解壓縮的 gzip 壓縮錯誤消息,或類似的東西。
- 對動態或靜態內容禁用 gzip 壓縮不會改變任何內容
解決方法很簡單:拒絕瀏覽器中的 gzip 壓縮內容。在 Firefox 中,如<http://forgetmenotes.blogspot.com/2009/05/how-to-disable-gzip-compression-in.html>所示:
- 在 URL 欄中輸入 about:config(接受免責聲明)
- 在 URL 欄下方的過濾器欄位中輸入編碼
- 點兩下“network.http.accept-encoding”行
- 清空值
在我的網站上,它用 CSS 做了一些奇怪的事情(並且 StackOverflow 在那之後根本沒有任何 CSS),但至少它正確地向我顯示了錯誤消息,這使我能夠修復錯誤。
希望它會幫助某人。