在经典asp页面中禁用缓冲区时显示的不需要的字符

时间:2013-10-21 15:47:28

标签: encoding asp-classic buffer

我正在使用经典的asp超过十年,我不记得曾经看过这个问题。 这是我的代码:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<% Option Explicit %>
<%


    Response.Expires = -1
    Response.CacheControl = "No-cache"
    Response.Charset = "windows-1252"
    Response.Buffer = false
    Server.ScriptTimeout = 300

%>
hello
world
with
unwanded
characters

以下是我在输出中得到的结果:

2a hello world with unwanded characters 0

在开头和结尾添加了一些字符,我不知道为什么但它似乎与Buffer有关。如果我设置Buffer = True它会解决问题,但因为真实页面会返回大量数据,所以我必须将缓冲区设置为false。

我检查了页面编码,一切看起来都不错,文件保存在windows-1252编码中。 IIS配置与站点上没有任何问题的其他页面相同。

我不明白这些角色来自哪里,但我想它必须与编码有关,有人有任何想法吗?

由于

1 个答案:

答案 0 :(得分:0)

当我将以下URLRewrite规则添加到我的web.config文件中时,我也开始出现相同的问题。这会清空服务器HTTP标头。

data

删除规则解决了这个问题。我不知道为什么会这样,但绝对可以为我解决问题。