asp页面提示Response 对象 错误 ASP 0156 : 80004005 HTTP 头错误

其实这类问题就是因为缓存问题,大家可以参考下面的方法解决:

有些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>

如果用的是小旋风的话 就是缺少组件

(0)

相关推荐

  • asp中利用xmlhttp抓取网页内容的代码

    需要分件html源代码 此例中的被抓取的html源代码如下 <p align=left>2004年8月24日星期二:白天:晴有时多云南风3-4级:夜间:晴南风3-4级:气温:最高29℃最低19℃ </p> 而程序中是从 以2004年8月24日为关键字搜索,直到</p>结速 而抓取的内容就变成了"2004年8月24日星期二:白天:晴有时多云南风3-4级:夜间:晴南风3-4级:气温:最高29℃最低19℃ " 干干净净的了.记录一下. 复制代码 代码如下:

  • Asp 使用 Microsoft.XMLHTTP 抓取网页内容并过滤需要的

    Asp 使用 Microsoft.XMLHTTP 抓取网页内容(没用乱码),并过滤需要的内容 示例源码: 复制代码 代码如下: <% Dim xmlUrl,http,strHTML,strBody xmlUrl = Request.QueryString("u") REM 异步读取XML源 Set http = server.CreateObject("Microsoft.XMLHTTP") http.Open "POST",xmlUrl,

  • Javascript+XMLHttpRequest+asp.net无刷新读取数据库数据

    复制代码 代码如下: /**//// <summary> /// 生成带CDATA的节点 /// </summary> /// <param name="xDocument">XmlDocument</param> /// <param name="elementName">元素名称</param> /// <param name="cdataValue">CDA

  • asp.net HttpWebRequest自动识别网页编码

    复制代码 代码如下: static string GetEncoding(string url) { HttpWebRequest request = null; HttpWebResponse response = null; StreamReader reader = null; try { request = (HttpWebRequest)WebRequest.Create(url); request.Timeout = 20000; request.AllowAutoRedirect

  • asp中使用MSXML2.ServerXMLHTTP实现异步请求例子

    asp使用MSXML2.ServerXMLHTTP异步发送请求时,需要注意判断MSXML2.ServerXMLHTTP对象的readyState是否为4,如果不判断直接获取对象的属性,如responseText会出现如下错误: 复制代码 代码如下: msxml3.dll 错误 '8000000a' 完成该操作所需的数据还不可使用. /a.asp,行 18 asp使用MSXML2.ServerXMLHTTP异步发送请求源代码: 复制代码 代码如下: <% if request.QueryStrin

  • Asp.net XMLHTTP封装类(GET,Post发送和接收数据)

    复制代码 代码如下: /**************************************************************** * 函数名称:SendCommand(SendMethod method, ST_Param p) * 功能说明:向远程发送URL和参数,接受返回信息(无乱码); * 参 数:method:xml发送方法,POST/Get 两种 P:参数结构体 public string Url; //远程URL public string Parameter

  • asp.net 模拟提交有文件上传的表单(通过http模拟上传文件)

    我们暂且不说如何去模拟数据,通过一个简单的form看看当请求发生时,客户端提交了什么样的数据给服务端. 下面是一个简单的html form,两个文本输入框,一个文件上传(这里我选择一张图片),注意有文件上传的form的enctype属性. 复制代码 代码如下: <form action="sql.aspx" method="post" enctype="multipart/form-data"> <input id="

  • asp.net利用HttpModule实现防sql注入

    1.新建一个类,实现IHttpModule接口 代码 复制代码 代码如下: public class SqlHttpModule : IHttpModule { public void Dispose() { } public void Init(HttpApplication context) { context.AcquireRequestState += new EventHandler(context_AcquireRequestState); } } 在实现接口的Init方法时,我们选

  • 解决ASP中http状态跳转返回错误页的问题

    IIS默认的错误页是很不友好的,很多人看到默认的错误页时都会说:网站打不开了!白白损失了这部分流量.而如果错误页直接跳转到首页又对搜索引擎很不友好,搞不好首页还会被封掉.所以根据情况,有两个方法解决这个问题: 如果是博客等内容型的网站,可以返回一个带有404错误的搜索框让访客搜索,若是电子商务型网站,则可以返回一个带有404错误的进度条进行跳转.这两种方法即照顾了访客又顾及到了SEO. 可以在Google webmaster tools中查看自己网站错误页有多少. 修改默认错误页的方法很简单:在

  • Asp WinHttp.WinHttpRequest.5.1 对象使用详解 伪造 HTTP 头信息

    由于微软封锁了 XmlHttp 对象,所以无法伪造部分 HTTP 头信息,但是 WinHttp.WinHttpRequest.5.1 对象,它居然用可以成功伪造所有 http 请求的 header 信息! 从msdn得知,WinHttp.WinHttpRequest.5.1 是 msxml 4.0 的底层对象,也就是说 XMLHTTP/ServerXMLHTTP 也是在它的基础上封装而来,WinHttpRequest 的用法与 XmlHttp 大致相同. WaitForResponse 在使用异

  • 用asp+xmlhttp编写web采集程序

    web采集程序?网页抓取程序?小倫程序?不管怎么叫,这种程序应用倒是蛮广的.本文不讨论这种使用这种程序引起的版权或道德问题,只谈这种程序在ASP+VBScript环境下的实现 :-) 预备知识:除了一般的ASP+VBScript的知识外,你还需要了解xmlhttp对象和正则表达式对象.xmlhttp对象是时下风头正劲的Ajax的主角:而学好了正则表达式,你再也不用为处理复杂的字符串犯愁. 在编写和调试正则表达式时,RegEx 这个小工具非常有用. 目录 抓取一个远程网页并保存到本地  改进:处理

  • 运行asp.net时出现 http错误404-文件或目录未找到

    问题原因: 我遇到的情况,装了.NET 2.0 + IIS 升级后就出现以上问题:不确定其他原因也会不会产生类似错误.(如果有,希望大家能贴出更多的原因,方便遇到同样错误的人找到问题的根源) 解决方法: 首先,要重新注册IIS :运行cmd 后 进入"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727" 键入命令aspnet_regiis -i 其次,在: 计算机管理--Internet信息服务(IIS)管理器--Web服务扩展--ASP.NET

随机推荐