其實這類問題就是因為緩衝問題,大家可以參考下面的方法解決:
有些ASP頁面第一次開啟的時候會出現Response 對象 錯誤 'ASP 0156 : 80004005' HTTP 頭錯誤,但重新整理後又正常了,解決方案如下複製代碼 代碼如下:Response.Buffer = True
'應該是這行,去掉就ok
'如果還不行就把
Response.Buffer = True
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.CacheControl = "no-cache"
Response.AddHeader "Pragma", "No-Cache"
'全都去掉,這個是不快取頁面面用的,去掉應該不會影響網站
該錯誤因為 Web 服務器使用一個 HTTP 頭來設定用戶端瀏覽器。 Web 服務器然後嘗試通過使用其他 HTTP 頭重設客戶 brower (例如, 當一個 HTTP 頭將瀏覽器設 content-type 然後重新導向之後發出) = text/html。 有一個樣本是處理 ASP 頁時在包含 HTML 標籤或任何其他伺服器端指令碼 Response.Redirect 語句之前。
注意 如果您升級到 Microsoft Windows Server 2003 運行 Microsoft Windows NT 4.0 電腦這也會發生。
有一個樣本是處理 ASP 頁時在包含 HTML 標籤或任何其他伺服器端指令碼 Response.Redirect 語句之前。
Response 對象的 ASP 的下列屬性和方法寫入 HTTP 頭:
Response.AddHeader
Response.CacheControl
Response.CharSet
Response.ContentType
Response.Expires
Response.ExpiresAbsolute
Response.Redirect
Response.Status
回到頂端
解決方案
要解決此問題之前, 發送 HTML 輸出設定 HTTP 標題, 如 Redirect 語句或 cookie 資訊。
例如, 要避免此錯誤與重新導向, 緩衝區或 ASP 頁限制其處理過程然後發出之後處理重新導向。 有兩種方法來完成緩衝: 頁面級或應用程式層級上。
注意 確保重新導向, 所有 ASP 指令碼後發出。 如果之前向 ASP 指令碼, 它發出將 ASP 頁重新導向不處理 ASP 代碼。
處理它們時一個應用程式層級, 上會被緩衝 Web 應用程式中所有 ASP 頁。 要設定一個應用程式層級, 上緩衝請按照下列步驟: 1. 在 Microsoft 管理主控台 (MMC), 找到 Web 網站駐留 Web 應用程式。
2. 單擊以展開網站以顯示虛擬目錄和 Web 應用程式。
3. 右擊 Web 應用程式, 然後單擊 屬性 。
4. 在 虛擬目錄 選項卡, 單擊 配置 。
注意 如果 配置 按鈕不可用, 虛擬目錄是不是 Web 應用程式。 單擊要建立虛擬目錄到 Web 應用程式 建立 。
5. 在 ApplicationConfiguration@@ 對話方塊中, 在 App 選項選項 卡上, 單擊 啟用緩衝 。
要設定頁面層級, 上緩衝在 ASP 頁上 @LANGUAGE 行後添加代碼如下所示:
<% @LANGUAGE = "VBScript" %><% Response.Buffer = True %>Other ASP/Clientside scripts or HTML ...<% Response.Redirect %>如下列代碼示範此外, 可用於 Cookie 設定頁層級, 上緩衝。 此程式碼片段寫入 Cookie 之前在發送 <HTML> 標記 (元素)。
Response.Cookies("Name")=value<HTML>...content...</HTML>
如果用的是小旋風的話 就是缺少組件