ASP经典:字符串编码

时间:2011-07-20 09:26:06

标签: character-encoding asp-classic browser

昨天,当我重构旧的ASP经典Web应用程序的起始页面时,我遇到了一个非常奇怪的错误。 但在我解释这个问题之前,我必须解释网站的构建方式。

Web本身由ASP页面组成,保存为ANSI Windows 1252.发送到浏览器的输出我估计编码为代码页1252,因为在响应头和HTML HEAD标记中都没有声明编码。

问题:

当我重构登录页面时(由于安全问题),我做了以下事情:

  • 将ASP文件转换为utf-8
  • 在页面顶部添加了<%@ Language="VBScript" @CODEPAGE=65001 %>
  • <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />添加到HTML HEAD

登录页面显示得很好。 但是!网站的其他部分现在在所有页面上都有编码问题(当在网络浏览器上显示时)(当然除了登录页面)。

怎么可能?我没有更改任何其他页面,登录页面中的编码设置只会影响该单页。

请赐教。请! : - )

1 个答案:

答案 0 :(得分:3)

因为代码页存储在会话中并且在登录页面上正在更改。如果您清除Cookie或打开隐身浏览器,问题应该消失,直到您再次返回登录页面。